Python Project Setup Skill
Set up new Python projects following modern best practices with uv, ruff, pytest, and proper project structure.
When to Use This Skill
Use this skill when:
- •User requests to create a new Python project
- •User wants to initialize Python tooling in an existing directory
- •User mentions setting up a Python development environment
- •User asks about Python project structure or best practices
Core Capabilities
- •
Project Initialization
- •Initialize projects with
uv init - •Set up proper directory structure
- •Configure Python version with pyenv
- •Initialize projects with
- •
Dependency Management
- •Install and configure uv package manager
- •Add essential dependencies (pytest, ruff, mypy, pydantic)
- •Set up development vs runtime dependencies
- •
Configuration Files
- •Create
pyproject.tomlwith tool configurations - •Set up
.gitignorefor Python projects - •Configure VSCode settings for Python development
- •Create
.python-versionfor version management
- •Create
- •
Project Structure
- •Create
src/<project_name>/for source code - •Set up
tests/directory for test files - •Create
docs/for documentation - •Set up
.vscode/for editor configuration
- •Create
Context Files
This skill references the following context files in this directory:
- •
project-structure-template.md- Standard directory layout - •
pyproject-toml-template.md- Configuration template - •
vscode-settings-template.json- Editor configuration - •
gitignore-template.md- Python gitignore patterns - •
readme-template.md- README structure
Key Tools and Commands
bash
# Project initialization uv init <project-name> # Dependency management uv add pytest --dev uv add ruff --dev uv add mypy --dev uv add pydantic # Sync dependencies uv sync
Expected Outcomes
After using this skill, the user should have:
- •A fully initialized Python project with modern tooling
- •Proper project structure following best practices
- •All essential dependencies installed
- •Configuration files set up correctly
- •Version control initialized (git)
- •Documentation scaffolding in place
Integration with Other Skills
- •Works with
python-code-qualityskill for linting setup - •Works with
python-testingskill for test framework configuration - •Complements the
python-project-setupagent for full orchestration