Skip to main content

Set up a modern Python project by running one command.

Project description

Create Python Proj

Logo

Set up a modern Python project by running one command. (The missing Create React App for Python)

Create Python projects with the best development tools and configurations.

Create Python Project works on macOS, Windows, and Linux.
If something doesn’t work, please file an issue.

This is the best Python workflow setup, and you deserve the best.

"A customer can have a car painted any colour he wants as long as it's black."

Quick Overview

pipx install create-python-proj
create-python-proj
cd my-proj
poetry shell
poetry run my-proj

If you've previously installed create-python-proj via pipx install create-python-proj, we recommend you run pipx upgrade create-python-proj to ensure that you are always using the latest version.

Get Started Immediately

You don’t need to manually install or configure tools like Poetry, flake8, or mypy. They are preconfigured and hidden so that you can focus on the code.

Create a project with the best setup, and you’re good to go.

Creating a Project

This package automates the process of creating a new Python project managed using Poetry. It sets up the project structure, initializes a Git repository, configures the best development tools: mypy, black, flake8, isort, pytest, and pytest-sugar, and adds the best configurations for these tools.

To create a new project, simply install using pipx:

pipx install create-python-proj

Then run the tool:

create-python-proj

You will be prompted for the project name and create a new directory with the project structure and configurations will be created.

If you don't have pipx installed, you can install it with:

python3 -m pip install --user pipx

(pipx is a Python package runner tool for running https://pypi.org/ packages)

It will create a directory called my-proj inside the current folder.
Inside that directory, it will generate the initial project structure and install the transitive dependencies:

my-proj
├── pyproject.toml
├── poetry.lock
├── README.md
├── .gitignore
├── .flake8
├── .venv
│   └── ...local Python virtual environment
├── my-proj
│   ├── __init__.py
│   └── main.py
└── tests
    ├── __init__.py
    └── test_example.py

No configuration or complicated folder structures, only the files you need to build your app. Once the installation is done, you can open your project folder and activate the local virtual environment, managed by Poetry:

cd my-proj
poetry shell

Inside the newly created project, you can run your program:

poetry run my-proj

Runs the starter "Hello, World!" program.

pytest

Runs the starter test_example test.

Contributing

Contributions to Create-Python-Proj are welcome. To contribute, please follow these steps:

  1. Fork the repository on GitHub.
  2. Create a new branch with a descriptive name.
  3. Commit your changes to the new branch.
  4. Create a pull request, and describe the changes you made.

Please make sure to follow the project's coding standards and add tests for any new features.

License

Create-Python-Proj is licensed under the MIT License. For more information, see the LICENSE file in the repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

create_python_proj-1.0.5.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

create_python_proj-1.0.5-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file create_python_proj-1.0.5.tar.gz.

File metadata

  • Download URL: create_python_proj-1.0.5.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.11.2 Darwin/22.3.0

File hashes

Hashes for create_python_proj-1.0.5.tar.gz
Algorithm Hash digest
SHA256 b19489c919778bd2f5485d7f0848e7a0aecff35c8e83adaf799ce61f14ea87eb
MD5 3c34c4c209075316b3a1896233c7cb17
BLAKE2b-256 9f61940573f88f485525e8ba140bb434b7b5a8af64093ef30587d87837229414

See more details on using hashes here.

File details

Details for the file create_python_proj-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for create_python_proj-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a4a830319a873e0576aa7147a2754c2b5b7172297dfcc74f56a12a1e4fc34ae1
MD5 953b37f12b1d12b108bf636af25d4f5f
BLAKE2b-256 511e4db2174e205b601437ebb9a8493a2dd420ae082f39052429b62e2c4458df

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page