Skip to content
/ pycutter Public

A highly opinionated Python template built for Human πŸ‘€ and AI πŸ€– devs, featuring AI-friendly configurations for Cursor, CodeRabbit, and future AI tools.

License

Notifications You must be signed in to change notification settings

rrozb/pycutter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

pycutter πŸ”ͺ

Pycutter Logo

A highly opinionated Python template built for Human πŸ‘€ and AI πŸ€– devs, featuring AI-friendly configurations for Cursor, CodeRabbit, and future AI tools. Your AI collegues deserve better πŸ’ͺ

Python 3.12 License: MIT

πŸš€ Features

  • Modern Python 3.12 setup
  • Poetry for dependency management
  • Ruff for lightning-fast linting
  • Pytest with coverage reporting
  • Deptry for dependency analysis
  • GitHub Actions CI pipeline
  • Pre-configured settings for:
    • Type checking with mypy
    • Code formatting
    • Git ignore patterns
    • Dependency analysis with Deptry
    • Cursor prompt
    • CodeRabbit AI code review

πŸ“¦ Project Structure

cookiecutter-python-template/
β”œβ”€β”€ assets/
β”‚   └── logo.png
β”œβ”€β”€ cookiecutter.json
β”œβ”€β”€ hooks/
β”‚   └── post_gen_project.py
└── {{cookiecutter.project_slug}}/
    β”œβ”€β”€ .github/
    β”‚   └── workflows/
    β”‚       └── ci.yml
    β”œβ”€β”€ {{cookiecutter.project_slug}}/
    β”‚   β”œβ”€β”€ __init__.py
    β”‚   β”œβ”€β”€ settings/
    β”‚   β”‚   β”œβ”€β”€ __init__.py
    β”‚   β”‚   └── settings.py
    β”‚   └── main.py
    β”œβ”€β”€ tests/
    β”‚   β”œβ”€β”€ __init__.py
    β”‚   └── test_main.py
    β”œβ”€β”€ .gitignore
    β”œβ”€β”€ .cursorrules
    β”œβ”€β”€ .coderabbit.yaml
    β”œβ”€β”€ makefile
    β”œβ”€β”€ pyproject.toml
    └── README.md

πŸ› οΈ Quick Start

  1. First, ensure you have cookiecutter installed:
pip install -U cookiecutter
  1. Create a new repository on GitHub (or other git provider)

  2. Generate a new Python project:

cookiecutter https://github.com/rrozb/pycutter.git
  1. Set up remote repository:
git remote add origin <your-repo-url>
git branch -M main
  1. Commit and push:
git add .
git commit -m "Initial commit"
git push origin main
  1. Start coding πŸ’» & follow the new project's README.md.

πŸ“‹ Requirements

  • Python 3.12+
  • Cookiecutter
  • Poetry (will be installed automatically)

🀝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'Add some amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

Or just open an issue 😊

What is next

  • Figure out how to improve repo for Devin
  • Add a guide for AI assisted development.
  • Add documentation support.

πŸ™ Acknowledgments

About

A highly opinionated Python template built for Human πŸ‘€ and AI πŸ€– devs, featuring AI-friendly configurations for Cursor, CodeRabbit, and future AI tools.

Topics

Resources

License

Stars

Watchers

Forks