Skip to content

Overview ​

P3G is a tool designed to generate modern Python package project structures, leveraging Poetry for dependency management and integrating various development tools and best practices to help developers quickly create up-to-date Python projects with support for Python 3.7 and higher, automatic code formatting, type checking, security checks, pre-configured GitHub Actions, Docker support, and automated documentation generation.πŸš€

πŸ€” Why You Need P3G ​

Setting up a new Python project with best practices can be time-consuming and complex. P3G solves this problem by:

  • Saving Time: Eliminate hours spent configuring development environments and tooling.
  • Ensuring Consistency: Maintain the same high-quality structure across all your Python projects.
  • Following Best Practices: Automatically implement industry-standard practices for code quality, testing, and deployment.
  • Reducing Technical Debt: Start with a clean, well-structured project that's easier to maintain long-term.
  • Simplifying Collaboration: Pre-configured GitHub templates and workflows make team collaboration seamless.
  • Accelerating Development: Focus on writing your actual code instead of project setup and infrastructure.
  • Staying Current: Benefit from modern tools like Poetry, Ruff, and automated dependency updates without the learning curve.

Whether you're a seasoned Python developer or just starting out, P3G helps you build professional-grade Python packages without the setup headaches.

πŸ’‘ Features ​

Development features ​

  • 🐍 Supports Python 3.7 and higher.
  • πŸ“¦ Poetry as a dependencies manager.
  • ⏱️ Faster formatter tool, automatic codestyle with ruff to replace black, isort and pyupgrade.
  • πŸ”„ Ready-to-use pre-commit hooks with code-formatting.
  • πŸ” Type checks with ruff; docstring checks with darglint; security checks with safety and bandit
  • πŸ§ͺ Testing with pytest.
  • πŸ“ Ready-to-use .editorconfig, .dockerignore, and .gitignore. You don't have to worry about those things.
  • 🐳 The ability of building docker.
  • πŸ“š Comprehensive documentation support with VitePress, a modern static site generator powered by Vue, providing a beautiful and responsive documentation site for your project.

Deployment features ​

  • πŸ”— GitHub integration: issue and PR templates.
  • πŸ”„ Github Actions with predefined build workflow as the default CI/CD.
  • 🧰 Everything is already set up for security checks, codestyle checks, code formatting, testing, linting, docker builds, etc with Makefile.
  • 🐳 Dockerfile for your package.
  • πŸ”„ Always up-to-date dependencies with @dependabot.
  • πŸ“ Automatic release notes with Release Drafter.

Open source community features ​

  • πŸ“‹ Ready-to-use Pull Requests templates and several Issue templates.
  • πŸ€– Files such as: LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, and SECURITY.md are generated automatically.
  • πŸ”„ Stale bot that closes abandoned issues after a period of inactivity.
  • 🏷️ Semantic Versions specification with Release Drafter.

πŸ’Œ Contact ​

For more information, please contact: [email protected]

⭐ Contribution ​

We appreciate your interest in contributing to our open-source initiative. We have provided a Developer's Guide outlining the steps to contribute to P3G. Please refer to this guide to ensure smooth collaboration and successful contributions.πŸ€πŸš€

Released under the Apache 2.0 License.