Skip to main content

An Awesome List of projects using the pyproject.toml Python configuration file.

1k
GitHub Stars
109
Curated Resources
9
Categories
12 min ago
Last Refreshed
TestingCode FormattingCode AnalysisPackaging & Project ManagementProject TemplatesOther ToolsArticlesOpen PEPsProjects discussing the use of

Use this list with your AI agent

Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:

"Show me rejected/withdrawn/superseded resources from awesome-pyproject"

Installation instructions →

What's inside

Projects discussing the use of

  • Alembic

    A database migrations tool for SQLAlchemy.

  • AWS SAM

    CLI tool to build, test, debug, and deploy Serverless applications using AWS SAM.

  • Briefcase Bootstrap Template

    A template for starting a Python app that will be deployed using briefcase.

  • bump2version

    An interim fork with the intent to merge back to the original project.

  • bumpversion

    An interim fork with the intent to merge back to the original project.

  • Dependency Parser

    A parser for Python dependency files.

Code Formatting

  • autoflake

    Removes unused imports and unused variables as reported by pyflakes.

  • autoimport

    Automatically add missing imports and remove unused imports.

  • autopep8

    A tool that automatically formats Python code to conform to the PEP 8 style guide.

  • Black

    The uncompromising Python code formatter.

  • Blue

    The slightly less uncompromising Python code formatter.

  • Darker

    Apply black reformatting to Python files only in regions changed since a given commit.

Other Tools

  • Autohooks

    Library for managing git hooks.

  • Commitizen

    Create commiting rules for projects, auto bump versions and auto changelog generation.

  • datamodel-code-generator

    Creates Pydantic data-model code from OpenAPI/JSON Schema files.

  • django-pyproject

    Django package to store some or all of your settings in your pyproject.toml file.

  • ini2toml

    Automatically translates .ini/.cfg files into TOML.

  • Poe the Poet

    A task runner that works well with Poetry.

Code Analysis

  • Bandit

    A tool designed to find common security issues in Python code.

  • deptry

    A command line tool to check for issues with dependencies in a Python project, such as obsolete or missing dependencies.

  • flake8-pyproject

    Plugin for Flake8 that reads configuration from pyproject.toml and injects the config into Flake8

  • FlakeHell

    Flake8 wrapper to make it nice, legacy-friendly, configurable.

  • import-linter

    Import Linter defines and enforces rules for the imports within and between Python packages.

  • interrogate

    Interrogate a codebase for docstring coverage.

Packaging & Project Management

  • BeeWare Briefcase

    Tools to support converting a Python project into a standalone native application.

  • check-wheel-contents

    Check your wheels have the right contents.

  • DepHell

    Project management for Python. Manage packages: convert between formats, lock, install, resolve, isolate, test, build graph, show outdated, audit. Manage venvs, build package, bump version.

  • FawltyDeps

    Find undeclared and unused dependencies in your Python project. Verify that your declared dependencies (in

  • Flit

    A simple way to put Python packages and modules on PyPI.

  • Hatch

    Modern, extensible Python project manager.

Project Templates

Testing

  • Coverage.py

    Code coverage measurement for Python.

  • ptr

    Python Test Runner (ptr) was born to run tests in an opinionated way, within arbitrary code repositories.

  • pytest

    A testing framework that makes it easy to write small tests, yet scales to support complex functional testing.

  • pytest-env

    A pytest plugin that enables you to set environment variables in a pyproject.toml file.

  • Tox

    A generic virtualenv manager to run test in different environments.

  • Ward

    A modern Python test framework designed to help you find and fix flaws faster.

Showing a sample of 109 resources. View the full list on GitHub →