Create a New Project with Flexlate¶
This guide covers creating a new project with Flexlate.
If you already
have a project that was previously generated from a template using
cookiecutter
or copier
and you want to update it with Flexlate,
you should follow the existing project guide.
If you want to use Flexlate to add new templates within an existing
project that was not generated from cookiecutter
or copier
, you
should follow the add to project guide.
fxt init-from
¶
The fxt init-from
command is used to create
a new Flexlate project from a template. It will also create a new folder
and initialize a git repository in it before adding the Flexlate output.
Let’s give it a try with a very minimal example template:
$ fxt init-from https://github.com/nickderobertis/copier-simple-example Initializing flexlate project with default add mode local and user=False in /tmp/tmp3q_6p8dg ⠋ Initializing... ⠋ Initializing... ⠙ Initializing... ✔ Finished initializing flexlate project Adding template source... Adding template source copier-simple-example from https://github.com/nickderobertis/copier-simple-example ⠋ ⠙ Sucessfully added template source copier-simple-example ⠙ ⠙ Applying template copier-simple-example to /tmp/tmp3q_6p8dg Updating 1 applied templates question1? Format: yaml my answer The second question question2? Format: float 10 create my answer.txt create temp.txt ✔ Successfully updated template output ✔ Successfully applied template copier-simple-example to /tmp/tmp3q_6p8dg my-project $ cd my-project $ ls flexlate-project.json flexlate.json 'my answer.txt'
We can see that it prompts based on the questions in the template, and then for the name of the generated folder.
Note
Cookiecutter templates will not prompt for a folder name, it is already determined by the template questions.
We can see that it generated the project complete with a Flexlate project config and config for the applied template.
If you want to generate the project from a template at a specific version,
--version
can be used, for example:
fxt init-from --version c7e1ba1bfb141e9c577e7c21ee4a5d3ae5dde04d https://github.com/nickderobertis/copier-simple-example
See the command reference for full details.
Next Steps¶
See how to update your project to a newer template version.