A tool that allows to quickly get your basic project structure ready, while adopting the best technologies, tools, and practices.
Project description
create_app is a tool for creating applications from templates.
When developers start a new project, they perform some repetitive tasks to build the basic project structure before actually start coding features. This basic structure involves things like: Well, the project structure, unit testing, code coverage, containerization, code linting and formatting, GIT hooks, building code documentation, among many others.
create_app is a tool that allows to quickly get your basic project structure ready. It provides a set of templates from which you can get your project started, plus it's super easy to use and encourages the adoption of the best technologies, tools, and practices.
At the moment, there are only Python templates available. But create_app can generate projects of any language.
Installation
Just install it with PIP:
python -m pip install create_app
Usage
Learn how to use the create_app command:
python -m create_app --help
You can use the --help option for all subcommands too.
List templates
Use the list subcommand to know which templates you can use:
python -m create_app list
Create your project from a template
Use the create subcommand and specify the TEMPLATE_NAME you wish to use:
create_app create TEMPLATE_NAME
Use a custom templates index
You or your organization may need to keep a separate index with your own templates.
If that's the case, you can list the templates in the custom index by running:
create_app list --index="https://www.somewhere.com/templates-index"
And create your project from a template in that index:
create_app create TEMPLATE_NAME --index="https://www.somewhere.com/templates-index"
Index of Available Templates
There's an index of templates, from which you can get your project started:
Template | Description |
---|---|
python_simple | Python project with unit tests, GIT hooks (pre-commit, black, isort, and flake8), and Docker |
python_compose | Python project with unit tests, GIT hooks (pre-commit, black, isort, and flake8), and Docker Compose |
python_fastapi | FastAPI project with unit tests, GIT hooks (pre-commit, black, isort, and flake8), and Docker |
python_fastapi_with_database | FastAPI project with unit tests, GIT hooks (pre-commit, black, isort, and flake8), Docker Compose, a PostgreSQL database (which can be very easily changed for any other), SQLAlchemy, and Alembic migrations |
Contribute
Application Creators is a new GitHub organization I've created to host, debate, and maintain this tool and the project templates. Its goal is to generate state-of-the-art templates useful to everyone. Feel free to express you opinion and contribute!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.