What problem does it solve?
This Skill aids in making informed decisions about Python codebases, providing guidelines for design patterns, project structure, and best practices, reducing cognitive load and enhancing maintainability.
Core Features & Use Cases
- Framework Selection: Recommendations for choosing between FastAPI, Django, and Flask based on application needs.
- Concurrency Model: Guidance on when to use asynchronous programming versus synchronous for better performance.
- Type Hints and Pydantic: Best practices for effective use of type hints and Pydantic for robust data validation and serialization.
- Project Layout: Suggestions for scalable project structures, catering to small tools to large applications.
- Django and FastAPI Specifics: Deep dive into specific idioms and considerations for these frameworks.
- Error Handling and Testing: Strategies for robust error handling and effective testing practices, including asynchronous tests.
- Before Writing Code: Checklist for key considerations before initiating code development.
- Avoid Common Traps: Avoiding common pitfalls such as incorrect framework use and improper async-sysnc integration.
Quick Start
Utilize the 'python-patterns' skill to decide on the most suitable framework for a new Python project and how to structure your project's layout.