Skip to content

skethirajan/py-scaffold

py-scaffold

Python PyPI codecov Ruff Pyrefly Pre-commit MkDocs License

A minimal scaffold for building modern, reproducible scientific Python packages.

Create your own python package with this template

Use this template to create your own repo, new_project. Then clone your new_project repo and follow along the instructions given in the Developer Guide on Environment Setup to set up your environment.

Now, run the initialization script (will interactively prompt you for some details) to automatically rename all the placeholders from the template.

# Run the init script (ensure you're at the project root level)
uv run python scripts/init_project.py

Before you push your changes (initialized with your project details), remember to configure GitHub Pages to host your docs. Also, you need to setup ADMIN_TOKEN (used in settings.yml) and CODECOV_TOKEN (used in ci.yml). Now, manually run the Repository Settings workflow (you need to do it just once) from the Actions tab of your repo.

Now, you can push your changes to GitHub and the CI/CD pipeline will take care of the rest.

git add .
git commit -m "chore(main): initialize project"
git push origin main

📦 Features

  • Quick project initialization with modern tools & best practices
  • Easy to extend this template to your needs

🚀 Getting Started

Resource Link
👉 Installation Guide Installation Guide
🧑‍💻 Developer Guide Developer Guide

About

A minimal scaffold for building modern, reproducible scientific Python packages.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors

Languages