python-project-setup

Initialize Python projects with uv, ruff, pytest, and project structure.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/jwplatta/prompt-library --skill python-project-setup-jwplatta
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: python-project-setup
Source: https://github.com/jwplatta/prompt-library/tree/main/claude/plugins/pythonic/skills/python-project-setup
Command: npx skills add https://github.com/jwplatta/prompt-library --skill python-project-setup-jwplatta

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill standardizes Python project setup, ensuring a modern, maintainable baseline with uv, ruff, pytest, and mypy.

Core Features & Use Cases

  • Project Initialization: Create a solid project structure (src/, tests/, docs/).
  • Dependency Management: Install and configure dev dependencies (pytest, ruff, mypy, etc.).
  • Configuration Files: Generate pyproject.toml, .gitignore, and editor settings.
  • Use Case: Quickly bootstrap a Python project ready for development, testing, and deployment.

Quick Start

Run uv init <project-name> and follow prompts to customize tooling and structure.

Frequently Asked Questions about python-project-setup

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a new Python project with modern tooling?

Set up a Python project by running `uv init <project-name>` to generate a structured directory with src/, tests/, and docs/ folders, then configure pyproject.toml with ruff, pytest, mypy, and other dev dependencies for testing and code quality.

What's the best way to manage Python dependencies and development tools?

Use uv as your package manager to install and configure dev dependencies like pytest, ruff, and mypy in pyproject.toml, ensuring reproducible builds and consistent tooling across your project and team.

How do I configure linting, type checking, and testing in a Python project?

Configure ruff for linting, mypy for type checking, and pytest for testing by defining their settings in pyproject.toml and editor config files, then run them as part of your development workflow.

Can I use uv with pytest and ruff for a complete development setup?

Yes, uv integrates with pytest for testing and ruff for linting to create a complete development environment; initialize your project with uv and both tools are included in the standard configuration.

What directory structure should a Python project follow?

A modern Python project should use src/ for source code, tests/ for test files, and docs/ for documentation; uv init creates this structure automatically with proper pyproject.toml configuration.

Do I need to configure VS Code separately for Python development?

No, uv init generates VS Code settings automatically as part of project initialization, configuring editor extensions and debugging tools to work with your project's Python environment and tooling.