# Python project conventions

> Project conventions for install, lint, test, format, and coverage via Make

- Skill: `rcarmo/python-project-conventions` (Agent Skill)
- Install (CLI): `npx skillmds@latest add rcarmo/python-project-conventions`
- Raw SKILL.md: https://api.skillmd.com/api/skills/rcarmo/python-project-conventions/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: rcarmo (https://skillmd.com/u/rcarmo)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/rcarmo/python-project-conventions

---


# Skill: Python project conventions

## Goal
Provide a consistent Python dev experience (install/lint/test/format/coverage) via Make targets.

## Expected repo files
- `pyproject.toml` (preferred) or `requirements*.txt`
- Package code under `src/` (preferred) or top-level package dir
- Tests under `tests/`

## Make targets (recommended)
- `make install` → `python -m pip install -e .`
- `make install-dev` → install dev extras + ruff/pytest
- `make lint` → `ruff check ...`
- `make format` → `ruff format ...`
- `make test` → `python -m pytest`
- `make coverage` → `python -m pytest --cov=... --cov-report=term-missing`
- `make check` → `make lint && make coverage`

## Quality Bars
- End product should be installable from the final repo URL via `uv tool` or `pip`

