{"id":29647230,"url":"https://github.com/s-celles/cookiecutter-python-package","last_synced_at":"2025-07-22T03:07:03.464Z","repository":{"id":304231787,"uuid":"1018093431","full_name":"s-celles/cookiecutter-python-package","owner":"s-celles","description":"[WIP] Cookiecutter template for a Python package with Ruff, MyPy, pytest, pre-commit, Bandit, Safety, GitHub Actions, Dependabot...","archived":false,"fork":false,"pushed_at":"2025-07-21T16:31:50.000Z","size":273,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-21T18:46:27.666Z","etag":null,"topics":["ai-generated-code","cookiecutter","package","python"],"latest_commit_sha":null,"homepage":"https://s-celles.github.io/cookiecutter-python-package","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s-celles.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-11T15:39:47.000Z","updated_at":"2025-07-12T13:59:24.000Z","dependencies_parsed_at":"2025-07-13T02:31:28.814Z","dependency_job_id":null,"html_url":"https://github.com/s-celles/cookiecutter-python-package","commit_stats":null,"previous_names":["s-celles/cookiecutter-python-package"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/s-celles/cookiecutter-python-package","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-celles%2Fcookiecutter-python-package","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-celles%2Fcookiecutter-python-package/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-celles%2Fcookiecutter-python-package/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-celles%2Fcookiecutter-python-package/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s-celles","download_url":"https://codeload.github.com/s-celles/cookiecutter-python-package/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-celles%2Fcookiecutter-python-package/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266417124,"owners_count":23925301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-generated-code","cookiecutter","package","python"],"created_at":"2025-07-22T03:07:02.957Z","updated_at":"2025-07-22T03:07:03.445Z","avatar_url":"https://github.com/s-celles.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cookiecutter Python Package\n\nA modern [cookiecutter](https://github.com/cookiecutter/cookiecutter) template for Python packages with best practices built-in.\n\n[![CI](https://github.com/s-celles/cookiecutter-python-package/actions/workflows/test.yml/badge.svg)](https://github.com/s-celles/cookiecutter-python-package/actions/workflows/test.yml)\n[![Documentation](https://github.com/s-celles/cookiecutter-python-package/actions/workflows/docs.yml/badge.svg)](https://s-celles.github.io/cookiecutter-python-package/)\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white)](https://github.com/pre-commit/pre-commit)\n[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org)\n[![Python versions](https://img.shields.io/badge/python-3.9%2B-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Cookiecutter template](https://img.shields.io/badge/cookiecutter-template-D4AA00.svg?logo=cookiecutter)](https://github.com/cookiecutter/cookiecutter)\n[![Code style: Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n[![Security: bandit](https://img.shields.io/badge/security-bandit-green.svg)](https://github.com/PyCQA/bandit)\n[![Type checked: mypy](https://img.shields.io/badge/type%20checked-mypy-blue.svg)](https://github.com/python/mypy)\n[![GitHub issues](https://img.shields.io/github/issues/s-celles/cookiecutter-python-package)](https://github.com/s-celles/cookiecutter-python-package/issues)\n[![GitHub stars](https://img.shields.io/github/stars/s-celles/cookiecutter-python-package)](https://github.com/s-celles/cookiecutter-python-package/stargazers)\n[![Downloads](https://img.shields.io/github/downloads/s-celles/cookiecutter-python-package/total)](https://github.com/s-celles/cookiecutter-python-package/releases)\n\n## 🚀 Quick Start\n\n```bash\n# Install cookiecutter\npip install cookiecutter\n\n# Create your package\ncookiecutter https://github.com/s-celles/cookiecutter-python-package.git\n```\n\nThat's it! You'll be prompted to customize your package with modern tools like **Ruff**, **pytest**, **MyPy**, and choice of **build backends** (setuptools, hatchling, flit, pdm).\n\n## ✨ What You Get\n\n- 📦 **Modern packaging** with `pyproject.toml` (PEP 621)\n- 🏗️ **Build backend choice** (setuptools, hatchling, flit, pdm)\n- 🧪 **Testing** with pytest and coverage\n- 🔍 **Code quality** with Ruff, MyPy, Bandit, Safety\n- 🚀 **CI/CD** with GitHub Actions\n- 📚 **Documentation** with MkDocs or Sphinx\n- 🛠️ **CLI support** with Typer, Click, or Argparse\n- 🐳 **Container support** with Docker and dev containers\n\n## 📖 Documentation\n\n**For complete documentation, examples, and detailed guides:**\n\n### 🔗 **[Visit Documentation Site →](https://s-celles.github.io/cookiecutter-python-package)**\n\nThe documentation includes:\n\n- **[Quick Start Guide](https://s-celles.github.io/cookiecutter-python-package/getting-started/quick-start/)** - Step-by-step setup\n- **[Template Options](https://s-celles.github.io/cookiecutter-python-package/configuration/template-options/)** - All configuration choices\n- **[Tools Overview](https://s-celles.github.io/cookiecutter-python-package/tools/overview/)** - Detailed tool explanations\n- **[Examples](https://s-celles.github.io/cookiecutter-python-package/getting-started/examples/)** - Real-world usage patterns\n- **[Build Backends Guide](https://s-celles.github.io/cookiecutter-python-package/tools/build-backends/)** - Choose the right backend\n- **[Contributing Guide](https://s-celles.github.io/cookiecutter-python-package/development/contributing/)** - Help improve the template\n\n## 🤝 Contributing\n\nWe welcome contributions! See our [Contributing Guide](https://s-celles.github.io/cookiecutter-python-package/development/contributing/) for details.\n\n## 📝 License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-celles%2Fcookiecutter-python-package","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs-celles%2Fcookiecutter-python-package","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-celles%2Fcookiecutter-python-package/lists"}