Python project template
@rohanjoackhim
About Python project template
mcp and python test server
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Python project template?
Python project template is a starter repository for any Python project, pre-configured with modern development tools. It includes ruff and black for linting and formatting, pytest with coverage for testing, and GitHub Actions to run checks automatically on every pull request and merge. It also provides a devcontainer for a consistent, containerized development environment.
How to use Python project template?
Use the template by creating a new repository from it. You can open it in GitHub Codespaces to automatically initialize the devcontainer, or open it locally in VS Code with the Dev Containers extension. Without a devcontainer, create a virtual environment, install the required packages from requirements-dev.txt, and run pre-commit install. Replace the sample main.py and tests/main_test.py with your own code. Run tests with python3 -m pytest.
Key features of Python project template
- Pre-installed linting with ruff (includes flake8, isort, pyupgrade)
- Code formatting with black
- Testing with pytest and coverage plugin pytest-cov
- Pre-commit hooks for automatic checks
- GitHub Actions CI triggered on pull requests and merges
- Devcontainer configuration for reproducible environments
- Default setup for Python 3.11, easily changeable
Use cases of Python project template
- Starting a new Python project with best practices for code quality
- Ensuring consistent linting, formatting, and testing across a team
- Setting up continuous integration without manual configuration
- Using a containerized development environment for reproducibility
- Learning how to structure a modern Python project with dev tools
FAQ from Python project template
What development tools are included in the template?
The template includes ruff (linting), black (formatting), pre-commit hooks, pytest, and the pytest-cov plugin. Checks and tests are run via GitHub Actions.
How do I change the default Python version from 3.11?
To change the Python version, update the image argument in .devcontainer/devcontainer.json, adjust the config options in .precommit-config.yaml, and change the version number in .github/workflows/python.yaml.
How can I run the tests?
Run python3 -m pytest from the root of the repository. The template includes a sample test in tests/main_test.py.
Where can I find a detailed explanation of the template files?
The README includes a file breakdown section explaining each file and folder. A longer blog post is linked at the bottom of the README.
Does the template include production dependencies?
Yes, requirements.txt lists production dependencies, while requirements-dev.txt lists packages needed only for development (e.g., tools and test libraries).
More Developer Tools MCP servers
JetBrains MCP Proxy Server
JetBrainsA model context protocol server to work with JetBrains IDEs: IntelliJ, PyCharm, WebStorm, etc. Also, works with Android Studio
Code Index MCP
johnhuang316A Model Context Protocol (MCP) server that helps large language models index, search, and analyze code repositories with minimal setup
FastAPI-MCP
tadata-orgExpose your FastAPI endpoints as Model Context Protocol (MCP) tools, with Auth!
Deepwiki MCP Server
regenrek📖 MCP server for fetch deepwiki.com and get latest knowledge in Cursor and other Code Editors
TalkToFigma
sonnylazuardiTalkToFigma: MCP integration between AI Agent (Cursor, Claude Code, Codex) and Figma, allowing Agentic AI to communicate with Figma for reading designs and modifying them programmatically.
Comments