Uncategorized

cookiecutter-python · PyPI


Quickstart

To install the latest Generator in your environment, run:

pip install cookiecutter-python

The generate-python CLI should become available in your environment.

Next, create a file, let’s call it gen-config.yml, with the following content:

default_context:
    project_name: Demo Generated Project
    project_type: module+cli
    full_name: John Doe
    email: [email protected]
    github_username: john-doe
    project_short_description: 'Demo Generated Project Description'
    initialize_git_repo: no
    interpreters: {"supported-interpreters": ["3.8", "3.9", "3.10", "3.11"]}

To generate a Python Package Project, run:

mkdir gen-demo-dir
cd gen-demo-dir

generate-python --config-file ../gen-config.yml --no-input

Now, you should have generated a new Project for a Python Package, based on the Template!

The Project should be located in the newly created demo-generated-project directory.

To leverage all out-of-the-box development operations (ie scripts), install tox:

python3 -m pip install --user 'tox<4'

To verify tox available in your environment, run: tox –version

Please, do a cd into the newly created directory, ie cd <my-great-python-package>.

To run the Test Suite, cd into the newly created Project folder, and run:

tox -e dev

All Tests should pass, and you should see a coverage report!

To run Type Checking against the Source Code, run:

tox -e type

All Type Checks should pass!

To setup a Git Repository, run:

git init
git add .
git checkout -b main
git commit -m "Initial commit"

To setup a Remote Repository, run for example:

git remote add origin <remote-repository-url>
git push -u origin main

To trigger the CI/CD Pipeline, run:

git push

Navigate to your github.com/username/your-repo/actions page, to see the CI Pipeline running!

Develop your package’s Source Code (business logic) inside src/my_great_python_package dir 🙂

Develop your package’s Test Suite (ie unit-tests, integration tests) inside tests dir 🙂

Read the Documentation’s Use Cases section for more on how to leverage your generated Python Package features.

Next Steps

To prepare for an Open Source Project Development Lifecycle, you should visit the following websites:

  • PyPI, test.pypi.org, Dockerhub, and Read the Docs, for setting up Release and Documentation Pipelines

  • github.com/your-account to configure Actions, through the web UI

  • Codecov, Codacy, and Codeclimate, for setting up Automated Code Quality, with CI Pipelines

  • https://www.bestpractices.dev/ for registering your Project for OpenSSF Best Practices Badge

Happy Developing!



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *