@@ -9,9 +9,9 @@ A modern GitHub template for starting AI-centric Python projects with batteries
99This template provides a complete development environment for AI/ML applications with:
1010
1111- ** AI/ML SDKs** : Pre-configured with Anthropic, OpenAI, Hugging Face, and MCP (Model Context Protocol) SDKs
12- - ** Modern Python tooling** : Uses ` uv ` for blazing-fast package management
12+ - ** Modern Python tooling** : Uses ` poetry ` for package management
1313- ** Type safety** : Pyrefly for type checking
14- - ** Code quality** : Ruff for linting and formatting
14+ - ** Code quality** : Black, isort, and Flake8 for formatting and linting
1515- ** HTTP client** : httpx for async HTTP operations
1616- ** Development environment** : Optional Nix flakes for reproducible environments
1717- ** Python 3.13** : Latest Python version support
@@ -21,7 +21,7 @@ This template provides a complete development environment for AI/ML applications
2121### Prerequisites
2222
2323- Python 3.13+
24- - [ uv ] ( https://github.com/astral-sh/uv ) (Python package manager)
24+ - [ Poetry ] ( https://python-poetry.org/ ) (Python package manager)
2525- [ Nix] ( https://nixos.org/download.html ) (optional, for development environment)
2626- [ direnv] ( https://direnv.net/ ) (optional, for automatic environment activation)
2727
@@ -42,61 +42,50 @@ This template provides a complete development environment for AI/ML applications
4242
43433 . The Nix environment will automatically provide:
4444 - Python 3.13
45- - All development tools (uv, ruff , pyrefly, etc.)
45+ - All development tools (poetry, black, isort, flake8 , pyrefly, etc.)
4646 - Pre-commit hooks
4747
4848#### Option 2: Without Nix (You already have Python)
4949
50501 . Ensure Python 3.13+ is installed
51- 2 . Install uv :
51+ 2 . Install Poetry :
5252 ``` bash
53- pip install uv
53+ pip install poetry
5454 ```
55553 . Install dependencies:
5656 ``` bash
57- uv sync
58- ```
59-
60- #### Option 3: Using uv
61-
62- 1 . [ Install uv] ( https://docs.astral.sh/uv/getting-started/installation/ )
63- 2 . Install Python using uv:
64- ``` bash
65- uv python install 3.13
66- ```
67- 3 . Install dependencies:
68- ``` bash
69- uv sync
57+ poetry install
7058 ```
7159
7260### Development Commands
7361
7462#### Running the Application
7563``` bash
76- uv run pai
64+ poetry run pai
7765```
7866
7967#### Testing
8068``` bash
8169# Using Nix command
8270runTests
8371
84- # Or directly with uv
85- uv run pytest --cov=pai --cov-report=term-missing --cov-report=html
72+ # Or directly with poetry
73+ poetry run pytest --cov=pai --cov-report=term-missing --cov-report=html
8674
8775# Run specific tests
88- uv run pytest tests/pai/test_main.py::test_specific_function
76+ poetry run pytest tests/pai/test_main.py::test_specific_function
8977```
9078
9179#### Linting and Formatting
9280``` bash
9381# Using Nix command
9482runLint
9583
96- # Or individually with uv
97- uv run ruff format src # Format code
98- uv run ruff check --fix src # Lint and auto-fix
99- pyrefly check # Type checking
84+ # Or individually with poetry
85+ poetry run black src # Format code
86+ poetry run isort src # Sort imports
87+ poetry run flake8 src # Lint
88+ poetry run pyrefly check # Type checking
10089```
10190
10291#### Pre-commit Hooks
@@ -129,18 +118,18 @@ Core dependencies included:
129118
1301191 . ** Make changes** to code in ` src/pai/ `
1311202 . ** Write tests** in ` tests/ ` mirroring the source structure
132- 3 . ** Run linting** with ` runLint ` or ` uv run ruff check src`
133- 4 . ** Run tests** with ` runTests ` or ` uv run pytest`
121+ 3 . ** Run linting** with ` runLint ` or ` poetry run flake8 src`
122+ 4 . ** Run tests** with ` runTests ` or ` poetry run pytest`
1341235 . ** Commit** - pre-commit hooks will run automatically
135124
136125## Adding Dependencies
137126
138127``` bash
139128# Add a production dependency
140- uv add < package-name>
129+ poetry add < package-name>
141130
142131# Add a development dependency
143- uv add --dev < package-name>
132+ poetry add --group dev < package-name>
144133```
145134
146135## Type Checking
0 commit comments