This repository provides a modern Python development environment using VSCode's Dev Container feature, with uv for package management and Ruff for code formatting/linting.
- 🐳 Containerized development environment using VSCode Dev Containers
- 🚀 Fast package management with uv
- ✨ Code formatting and linting with Ruff
- 🔍 Pre-commit hooks for code quality
- 🔄 GitHub Actions for CI/CD
- 🐍 Python 3.12 by default
The development container is configured to provide a consistent and efficient Python development experience:
- Fast Package Management: Uses
uv
instead of pip for significantly faster dependency management - Modern Code Quality Tools: Integrated Ruff for both formatting and linting
- Git Integration: Automatic mounting of local Git and SSH configurations
- Pre-configured VSCode: Essential extensions and settings for Python development
- CI/CD Ready: GitHub Actions workflows for testing, linting, and Docker builds
- Click "Use this template" on GitHub to create your repository
- Clone your new repository
- Open in VSCode
- When prompted, click "Reopen in Container"
- Run the setup script:
python setup.py
- Enter your project name when prompted
Use uv to manage Python packages. Since the project is already initialized, then from the root of the project run:
uv sync
To run python code, use the following command:
uv run python <path_to_script>
To run tests, use the following command:
uv test
To format code, use the following command:
uv run ruff check --fix .