@project.command()<EOL>@click.option('<STR_LIT>', required=True, type=str,<EOL>help='<STR_LIT>')<EOL>@click.option('<STR_LIT>', type=str, help='<STR_LIT>')<EOL>@click.option('<STR_LIT>', type=str, help='<STR_LIT>')<EOL>@click.option('<STR_LIT>', is_flag=True, help='<STR_LIT>')<EOL>@click.option('<STR_LIT>', is_flag=True, help='<STR_LIT>')<EOL>@click.pass_context<EOL>@clean_outputs<EOL>def create(ctx, name, description, tags, private, init):
try:<EOL><INDENT>tags = tags.split('<STR_LIT:U+002C>') if tags else None<EOL>project_dict = dict(name=name, description=description, is_public=not private, tags=tags)<EOL>project_config = ProjectConfig.from_dict(project_dict)<EOL><DEDENT>except ValidationError:<EOL><INDENT>Printer.print_error('<STR_LIT>')<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT>try:<EOL><INDENT>_project = PolyaxonClient().project.create_project(project_config)<EOL><DEDENT>except (PolyaxonHTTPError, PolyaxonShouldExitError, PolyaxonClientException) as e:<EOL><INDENT>Printer.print_error('<STR_LIT>'.format(name))<EOL>Printer.print_error('<STR_LIT>'.format(e))<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT>Printer.print_success("<STR_LIT>".format(_project.name))<EOL>if init:<EOL><INDENT>ctx.obj = {}<EOL>ctx.invoke(init_project, project=name)<EOL><DEDENT>
Create a new project.

    Uses [Caching](/references/polyaxon-cli/#caching)

    Example:

    \b
    ```bash
    $ polyaxon project create --name=cats-vs-dogs --description="Image Classification with DL"
    ```