Goal
Create a Python project structure that supports growth without framework sprawl.
When to Use
- A Python repo is becoming messy.
- The team needs a clean layout before implementation.
- Multiple entrypoints share domain logic.
Instructions
- Identify the project's entrypoints and shared domain logic.
- Separate package code, scripts, tests, config, and runtime adapters.
- Define naming and layering conventions.
- Recommend structure for future growth and packaging.
Constraints
- Keep one responsibility per module or package.
- Do not mix throwaway scripts with reusable domain code.
- Avoid structure that only mirrors framework folders.
Output Format
- project layout
- package boundaries
- naming guidance
- growth notes
Examples
- "How should this Python service repo be organized?"
- "Split this messy Python project into clean packages."