Skip to main content

img img img img img img img img img

img img

Minimal Python Project Skeleton

  1. About The Project
  2. Getting Started
    1. Installation
  3. Contributing
  4. License
  5. Contact
  6. Acknowledgments

About The Project

This folder structure should act as a simple starting point for your next python project.

.
├── .envrc
├── .github
│   ├── dependabot.yml
│   └── workflows
│       ├── docs.yaml
│       ├── pre-commit.yaml
│       ├── release.yaml
│       └── test.yaml
├── .gitignore
├── .pre-commit-config.yaml
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── README.org
├── docs
│   ├── api.md
│   └── index.md
├── mkdocs.yml
├── pyproject.toml
├── src
│   └── minimal_python_project_skeleton
│       └── __init__.py
└── test
    └── test_func.py

7 directories, 19 files

It contains just the minimum to get you started with a ready configured GitHub actions for automated linting, testing, documenting with MkDocs and mike and releasing on PiPy.

Getting Started

Use this template directly to create a new GitHub repository or just clone the repository to your desired destination and start working on your new project.

The docs workflow publishes one docs version per branch to a gh-pages branch. After the first push, set Settings -> Pages -> Source to Deploy from a branch: gh-pages, / (root). The site root works after the first push to main.

I have marked all the relevant parts that you might want to adjust.

.github/workflows/release.yaml:      url: https://pypi.org/p/minimal-python-project-skeleton  # TODO: Replace with your PyPI project name
.github/workflows/release.yaml:      url: https://test.pypi.org/p/minimal-python-project-skeleton  # TODO: Replace with your TestPyPI project name
docs/api.md:<!-- TODO: Change package name -->
mkdocs.yml:site_name: minimal_python_project_skeleton  # TODO: Change project name
mkdocs.yml:repo_url: https://github.com/MArpogaus/minimal_python_project_skeleton  # TODO: Change project repo
pyproject.toml:dependencies = []  # TODO: Add dependencies
pyproject.toml:license = { text = "MIT" }  # TODO: Choose license
pyproject.toml:name = "minimal_python_project_skeleton"  # TODO: Change package name
pyproject.toml:  'minimal_python_project_skeleton[test]',  # TODO: Change package name
pyproject.toml:Changelog = "https://github.com/MArpogaus/minimal_python_project_skeleton/blob/dev/CHANGELOG.md"  # TODO: Change project repo
pyproject.toml:Documentation = "https://marpogaus.github.io/minimal_python_project_skeleton"  # TODO: Change project repo
pyproject.toml:Issues = "https://github.com/MArpogaus/minimal_python_project_skeleton/issues"  # TODO: Change project repo
pyproject.toml:Repository = "https://github.com/MArpogaus/minimal_python_project_skeleton"  # TODO: Change project repo

Pro-Tipp: If you later want to update the template, keep a separate branch (i.e. skeleton) around and cherry-pick the changes you would like to keep for future projects. This way you can also pull the latest version from upstream and checkout the new files you would like to use in your project.

Installation

This package is available on PyPI. You install it using pip:

pip install minimal_python_project_skeleton

Contributing

Any Contributions are greatly appreciated! If you have a question, an issue or would like to contribute, please read our contributing guidelines.

License

Distributed under the MIT License

Contact

Marcel Arpogaus - znepry.necbtnhf@tznvy.pbz (encrypted with ROT13)

Project Link: https://github.com/MArpogaus/python-project-skeleton

Acknowledgments

Metadata

Release files for minimal-python-project-skeleton 0.4.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 minimal-python-project-skeleton 0.4.0
File Size Uploaded
minimal_python_project_skeleton-0.4.0.tar.gz 14.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for minimal-python-project-skeleton 0.4.0
File Interpreter ABI Platform
minimal_python_project_skeleton-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 19.6 kB

Release files / minimal_python_project_skeleton-0.4.0.tar.gz

Download URL minimal_python_project_skeleton-0.4.0.tar.gz
Size 14.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3cf7851bc73a6f7fd6774a2da35ca98feeb2d38f7f9ce1a61f8de1de28ea931e
BLAKE2b-256 checksum
How to use checksums
b34d6d4c1434b210a5846e1de0d75893be7badac55721cffd56021668ff97cbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / minimal_python_project_skeleton-0.4.0-py3-none-any.whl

Download URL minimal_python_project_skeleton-0.4.0-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
083ff4553d5c9f42266b13993fe2b7939d14388d8ceef24fb89b914ba084420d
BLAKE2b-256 checksum
How to use checksums
36275e7cfd8d2536f1aa1450976c4b405fd65a46fde262b844686254bf264f37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.2

2 release files

0.0.1

2 release files

0.0.0

2 release files

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