panoptipy
A Package for the Static Code Quality Assessment of Python codebases. It scans local codebases or remote GitHub repositories and generates a report summarising various code quality metrics.
Quickstart
The main way to use panoptipy is through its command-line interface. Here's how to scan a Python codebase that is in the "project" directory:
# Basic scan with default settings
$ panoptipy scan /path/to/project
To run on multiple directories, you can specify them as a space-separated list:
# Scan multiple directories
$ panoptipy scan /path/to/project1 /path/to/project2
You can also use wildcards to specify directories:
# Scan all directories in the current directory
$ panoptipy scan ./*
Using the scan command in this way will:
- Load all configured checks (there's a list below)
- Analyse your codebase
- Generate a report with the results
- Output the report to the console (by default)
The scan report shows:
- Overall codebase rating (Gold, Silver, Bronze, or Problematic)
- A summary of whether each individual check passed or not
- Detailed information about any failures
What is panoptipy for?
There is a lot of overlap between panoptipy and pre-commit (with the relevant hooks). So what are the differences?
- pre-commit is meant to be used by developers to check their own code before they commit it or in Continuous Integration (CI) / Continous Deployment (CD) pipelines.
- panoptipy has features that help the leaders and managers of other developers. To that end it can summarise the results of many code repos at once.
- panoptipy can be be used to generate and export reports in a variety of formats (JSON, parquet) for further analysis.
These packages are similar in that they can both be used in CI/CD pipelines but pre-commit should be your first port of call for that and is not only more geared to that use, but also far more mature.
Installation
You can use panoptipy as a stand-alone tool via Astral's uv package:
uvx panoptipy scan .
Alternatively, you can install it as a Python package with pip install or uv add.
To install the development version from git, use:
pip install git+https://github.com/aeturrell/panoptipy.git
Documentation
You can find the full documentation for panoptipy at https://aeturrell.github.io/panoptipy/.
Metadata
Release files for panoptipy 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| panoptipy-0.0.9.tar.gz | 54.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| panoptipy-0.0.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 89.0 kB
Release files / panoptipy-0.0.9.tar.gz
| Download URL | panoptipy-0.0.9.tar.gz |
|---|---|
| Size | 54.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
946cf39a4c937ed70d2798d51831df7271987e0840bae825eccb121ce4770efa
|
|
BLAKE2b-256 checksum How to use checksums |
2adbfefcc0b4b5a41abcccc96d1a1884a42a2a914f8aa081fb8f799c1710a5e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency logRelease files / panoptipy-0.0.9-py3-none-any.whl
| Download URL | panoptipy-0.0.9-py3-none-any.whl |
|---|---|
| Size | 34.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0e723a2fa962863fef55437c9a7838f315e32ba8e62f5dc26318a6466f6f8602
|
|
BLAKE2b-256 checksum How to use checksums |
3dfe1e97275bb7aa47dc18ce575616195bb4281a9c69c420750c6a4a4382954e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency log