haddock-development/claude-reflect-system/python-project-creator

Claude Code and agent skill by haddock-development/claude-reflect-system

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Creates Python projects with proper structure, virtual environments, and dependency management. Use when users request to create a new Python project, set up a Python development environment, or initialize a Python application with standard tooling.

Install

npx vskill@latest install haddock-development/claude-reflect-system/python-project-creator

SKILL.md

Python Project Creator

Critical Corrections

Use 'uv' instead of 'pip'

  • ✗ Don't: pip install, pip freeze
  • ✓ Do: uv pip install, uv pip freeze (uv is faster and more modern)

Always use pytest, never unittest

  • ✗ Don't: unittest framework
  • ✓ Do: pytest for all testing needs

Overview

This skill creates well-structured Python projects with best practices for dependency management, testing, and code organization. It sets up virtual environments, installs dependencies, and configures common development tools.

Project Creation Workflow

1. Understand Requirements

Ask the user about:

  • Project name and purpose
  • Type: CLI tool, web app, library, data science project
  • Dependencies: Required packages
  • Testing: Testing framework preference (pytest, unittest)
2. Create Project Structure

Standard Python project structure:

project-name/
├── src/
│ └── project_name/
│ ├── __init__.py
│ └── main.py
├── tests/
│ ├── __init__.py
│ └── test_main.py
├── .gitignore
├── README.md
├── requirements.txt
└── setup.py (optional, for libraries)
3. Virtual Environment Setup

Create and activate virtual environment:

bash
# Create virtual environment
python3 -m venv venv
# Activate (instructions for user)
# macOS/Linux: source venv/bin/activate
# Windows: venv\Scripts\activate
4. Install Dependencies

Install packages using uv:

bash
uv pip install <package-name>
uv pip freeze > requirements.txt

For development dependencies:

bash
uv pip install pytest black flake8 mypy
5. Initialize Git
bash
git init
git add .
git commit -m "Initial commit: project setup"

Project Types

CLI Application
  • Use argparse or click for command-line arguments
  • Include main.py with proper entry point
  • Add if __name__ == "__main__": guard
Web Application
  • Flask: Lightweight, good for small APIs
  • FastAPI: Modern, async, auto-documentation
  • Django: Full-featured, batteries included
Library/Package
  • Include setup.py for packaging
  • Follow semantic versioning
  • Add comprehensive docstrings
Data Science
  • Include notebooks/ directory for Jupyter notebooks
  • Add data/ directory (with .gitignore)
  • Common packages: pandas, numpy, matplotlib, scikit-learn

Testing Setup

pytest (Required)

Always use pytest for testing:

bash
uv pip install pytest pytest-cov

Example test file:

python
# tests/test_main.py
import pytest
from src.project_name.main import my_function
def test_my_function():
assert my_function(2, 3) == 5

Run tests:

bash
pytest
pytest --cov=src # with coverage

Code Quality Tools

Black (Code Formatter)
bash
uv pip install black
black src/ tests/
Flake8 (Linter)
bash
uv pip install flake8
flake8 src/ tests/
mypy (Type Checker)
bash
uv pip install mypy
mypy src/

Common Patterns

Entry Point Pattern
python
# src/project_name/main.py
def main():
"""Main application entry point."""
print("Hello, World!")
if __name__ == "__main__":
main()
Configuration Pattern
python
# src/project_name/config.py
import os
from pathlib import Path
# Project root directory
PROJECT_ROOT = Path(__file__).parent.parent.parent
# Load environment variables
DEBUG = os.getenv("DEBUG", "False") == "True"
Error Handling Pattern
python
class ProjectError(Exception):
"""Base exception for this project."""
pass
class ConfigError(ProjectError):
"""Configuration-related errors."""
pass

.gitignore Template

# Virtual environment
venv/
env/
.venv/
# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
*.egg-info/
dist/
build/
# IDE
.vscode/
.idea/
*.swp
*.swo
# Environment
.env
.env.local
# Testing
.pytest_cache/
.coverage
htmlcov/
# OS
.DS_Store
Thumbs.db

Best Practices

Dependency Management
  • Pin exact versions in production: package==1.2.3
  • Use ranges for libraries: package>=1.2,<2.0
  • Separate dev dependencies from production
  • Keep requirements.txt minimal
Project Structure
  • Use src/ layout to avoid import issues
  • Keep tests separate from source code
  • One module per file, clear naming
  • Flat is better than nested (within reason)
Documentation
  • Write clear README.md with setup instructions
  • Add docstrings to all public functions/classes
  • Include usage examples in README
  • Document environment variables
Version Control
  • Initialize git from the start
  • Write meaningful commit messages
  • Create .gitignore before first commit
  • Never commit secrets or credentials

Quick Start Examples

Minimal CLI Tool
bash
mkdir my-cli-tool && cd my-cli-tool
python3 -m venv venv
source venv/bin/activate
uv pip install click
# Create main.py, tests, etc.
FastAPI Web Service
bash
mkdir my-api && cd my-api
python3 -m venv venv
source venv/bin/activate
uv pip install fastapi uvicorn
# Create app structure
Data Science Project
bash
mkdir my-analysis && cd my-analysis
python3 -m venv venv
source venv/bin/activate
uv pip install pandas numpy matplotlib jupyter
# Create notebooks/, data/, src/

Resources

This skill includes examples in the bundled directories:

scripts/
  • example.py - Template Python script with best practices
references/
  • api_reference.md - Common library documentation references
assets/
  • Project templates and boilerplate code

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
94
Repository forks
12
7-day trend score
23

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 3 May 2026, 6 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/haddock-development/claude-reflect-system/python-project-creator/badge)](https://verified-skill.com/skills/haddock-development/claude-reflect-system/python-project-creator)

Something wrong with this skill or its page? Tell us.