Skip to main content

template python project with necessary configurations

Project description

pyproject-tmpl

features

  1. pytest
  2. pre-commit
  3. darker for code format
  4. ruff for lint
  5. commitlint for commit message format
  6. typer for cli
  7. sqlmodel for database ORM
  8. alembic for database migration

introduction

the project uses src-layout, includes my_sdk (for publish) and biz (for business logic).

sdk is designed for publish and no need to rename, we use file/folder mapping my_sdk=src/sdk in pyproject.toml.

feel free to rename my_sdk to [the name you want] in the whole project for your own use or publish.

dev

before you start:

  1. must run ./scripts/setup
  2. replace my_sdk with [the name you want] in the whole project
  3. remember to uv pip install -e .[all] to make sure my_sdk is available in development.

unit test

uv run -m pytest

run cli

uv run main.py --help

release sdk

  1. cp .pypirc.example .pypirc
  2. replace your token in .pypirc
  3. git tag vx.y.z
  4. ./scripts/publish

build executable file

./scripts/build

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

pyproject_tmpl-0.1.1.dev10.tar.gz (91.2 kB view details)

Uploaded Source

Built Distribution

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

pyproject_tmpl-0.1.1.dev10-py3-none-any.whl (2.1 kB view details)

Uploaded Python 3

File details

Details for the file pyproject_tmpl-0.1.1.dev10.tar.gz.

File metadata

  • Download URL: pyproject_tmpl-0.1.1.dev10.tar.gz
  • Upload date:
  • Size: 91.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for pyproject_tmpl-0.1.1.dev10.tar.gz
Algorithm Hash digest
SHA256 0a19e905387cc50ee1a6620e8d90116bc344540f62364325b055a5fcf61fcafb
MD5 f99713a79435d0072aac2552a7b19d16
BLAKE2b-256 0b615debe7a53425ac044be15e17a8e265d3309171471836419aa6f4ce6c4fba

See more details on using hashes here.

File details

Details for the file pyproject_tmpl-0.1.1.dev10-py3-none-any.whl.

File metadata

File hashes

Hashes for pyproject_tmpl-0.1.1.dev10-py3-none-any.whl
Algorithm Hash digest
SHA256 aaa16ea196491df83e99aeb6544635d63bf82c5b34e9b3d3cf1f94089ddbcb9b
MD5 cd192bf920bef6b3416ba801da4fda2c
BLAKE2b-256 66356da76267bf38069bd23d9ebdeb279c7f1e6d11ddf18614dd39a54e578d81

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