Skip to main content

Bake a Py

This project provides a template from which you can create your own Python packages and projects. It uses modern tools and conventions to ensure a good development experience.

Package Structure

Package structure was inspired by various templates and recommended best practices, such as:

It provides a src directory, under which your own packages sit. Example files for __init__.py, __main__.py and cli.py are already provided.

Tests are placed under the tests directory, and documentation under the docs directory.

To start your new project, you should change its name, URL and metadata details at:

  1. README.md
  2. CHANGELOG.md
  3. setup.py
  4. tests/*.py
  5. src/*

GitHub Features

The .github directory comes with a number of files to configure certain GitHub features.

  • Various Issue templates can be found under ISSUE_TEMPLATE.
  • A Pull Request template can be found at PULL_REQUEST_TEMPLATE.md.
  • Automatically mark issues as stale after a period of inactivity. The configuration file can be found at .stale.yml.
  • Keep package dependencies up to date with Dependabot. The configuration file can be found at dependabot.yml.
  • Keep Release Drafts automatically up to date with Pull Requests, using the Release Drafter GitHub Action. The configuration file can be found at release-drafter.yml and the workflow at workflows/release-drafter.yml.
  • Automatic package building and publishing when pushing a new version tag to main. The workflow can be found at workflows/publish-package.yml.
  • Code quality and security analysis with CodeQL. The workflow can be found at workflows/codeql-analysis.yml.

Tooling

This package sets up various tox environments for static checks, testing, building and publishing. It is also configured with pre-commit hooks to perform static checks and automatic formatting.

If you do not use tox, you can build the package with build and install a development version with pip.

Assume cd into the repository's root.

To install the pre-commit hooks:

pre-commit install

To run type checking:

tox -e typecheck

To run linting tools:

tox -e lint

To run automatic formatting:

tox -e format

To run tests:

tox

To build the package:

tox -e build

To build the package (with build):

python -m build

To clean the previous build files:

tox -e clean

To test package publication (publish to Test PyPI):

tox -e publish

To publish the package to PyPI:

tox -e publish -- --repository pypi

To install an editable version:

pip install -e .

Metadata

Release files for bake-a-py 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bake-a-py 1.0.0
File Size Uploaded Provenance Actions
bake-a-py-1.0.0.tar.gz 15.9 kB Without provenance Details for bake-a-py-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for bake-a-py 1.0.0
File Interpreter ABI Platform Actions
bake_a_py-1.0.0-py3-none-any.whl Python 3 none any Details for bake_a_py-1.0.0-py3-none-any.whl

Total release size: 22.0 kB

Release files / bake-a-py-1.0.0.tar.gz

Download URL bake-a-py-1.0.0.tar.gz
Size 15.9 kB
Tags Source
SHA-256 checksum
How to use checksums
fd7c2403148254986cdff9b495eb3becb99eac543c1c34d0b300f34e3dd7aef5
BLAKE2b-256 checksum
How to use checksums
42c91d61dbe5e91ffce076346c9d6d1d434e2bcf18dc5541d5a2c3cbd9c4fd56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.5

Release files / bake_a_py-1.0.0-py3-none-any.whl

Download URL bake_a_py-1.0.0-py3-none-any.whl
Size 6.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ebe1b4f84ecee29e72e0c18b28693218288efdf0355ef3531866c50f621193c5
BLAKE2b-256 checksum
How to use checksums
d13b60a0e76f7cee2f40202c4ec5131f6408e7189125d890f23d62e388d767b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.5

Security for bake-a-py 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page