Source code quality evaluation platform powered by AI
Project description
The quality code compass
Your guide to drive any codebase to excellence.
v0.8.1
Quodeq scans any codebase with AI and scores it across six quality dimensions — Security, Reliability, Maintainability, Performance, Flexibility, and Usability — based on ISO 25010. Get grades, find violations, fix what matters.
Watch the demo · Website · Releases
Getting Started
pipx install quodeq # Install quodeq
quodeq dashboard # Launch the dashboard
That's it. The dashboard lets you point to any project and run evaluations from the UI.
Also available via
brew install quodeq/tap/quodeqorpip install quodeq.
Requirements
| Dependency | Version | |
|---|---|---|
| Python | 3.12+ | Runtime (brew install python or download) |
| Node.js | 18+ | Dashboard UI (brew install node or download) |
| Claude Code | latest | AI analysis engine (npm i -g @anthropic-ai/claude-code) |
During the current development phase, Quodeq uses Claude Code as its AI analysis engine. We plan to expand LLM ecosystem support in future releases, including other providers and local LLMs.
Optional: Setting
ANTHROPIC_API_KEYenables the dashboard to fetch the latest available models from the Anthropic API. Without it, a built-in default model list is used. Claude Code CLI handles its own authentication — no API key is needed to run evaluations.
Dashboard
The Quodeq Dashboard is the main way to use Quodeq. Launch evaluations, browse results, and track quality over time — all from a single web UI.
quodeq dashboard
Opens at http://localhost:4173 with:
- Overall grade & score — A-F letter grade, numeric score /10, trend across runs
- Dimension breakdown — individual scores per quality dimension with severity counts
- Violations explorer — drill into findings by file, principle, or CWE classification
- Top offending files — ranked list of where to focus remediation
- Run history — track how your codebase evolves over time
Click any dimension, file, or principle to explore the details.
QuodeqBar (macOS) — coming soon
A native menu bar companion app to manage the dashboard — start/stop the server, see evaluation status at a glance, and open the dashboard in one click.
Early preview: You can try it now by downloading the DMG from Releases. Since it's not yet signed, allow it with:
xattr -cr /Applications/QuodeqBar.app
CLI usage
You can also run evaluations directly from the terminal:
quodeq evaluate /path/to/project
Run quodeq evaluate --help and quodeq dashboard --help for all available options.
How It Works
- Detect — identifies the languages and structure of the codebase
- Analyze — spawns an AI CLI with read-only tools to explore the code
- Collect — findings stream as structured JSONL via tool calls
- Score — maps findings to ISO 25010 principles with CWE classifications
- Report — produces per-dimension reports with grades, violations, and compliance
Results are stored in ~/.quodeq/evaluations/ and persist across sessions.
Supported Languages
Quodeq can evaluate any codebase in any language. The AI analysis engine reads and understands code regardless of the tech stack.
The Q² Scoring Formula
Quodeq scores each principle on a 0–10 scale using four independent constraints:
- Violation Base — hyperbolic curve where the first violations hurt most (
10 / (1 + K * weighted_violations)) - Compliance Lift — evidence of good practices fills the gap between the base and 10
- Violation Ceiling — log₂-based cap prevents compliance from overriding significant violations
- Severity Grade Floor — grade labels match reality (only critical violations can produce a "Critical" grade)
The final score: max(floor, min(ceiling, base + (10 - base) * lift))
Full details in src/quodeq/core/scoring/README.md.
Development
git clone https://github.com/quodeq/quodeq.git && cd quodeq
uv sync
uv run pytest
Built with Claude Code
Development powered by Claude Code from Anthropic.
Changelog
See CHANGELOG.md for release history.
License
See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quodeq-0.9.0.tar.gz.
File metadata
- Download URL: quodeq-0.9.0.tar.gz
- Upload date:
- Size: 459.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da4c45fdc1eb5f4944ce96d6cc90789f9ee741fc2496b04dec178767a328297a
|
|
| MD5 |
169f614fa6f45f26659d8a0e12a39b71
|
|
| BLAKE2b-256 |
ae3848896e06489b746d86a192025d63a80bce742fe9f9c479ab4e53b4053ebf
|
Provenance
The following attestation bundles were made for quodeq-0.9.0.tar.gz:
Publisher:
publish.yml on quodeq/quodeq
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
quodeq-0.9.0.tar.gz -
Subject digest:
da4c45fdc1eb5f4944ce96d6cc90789f9ee741fc2496b04dec178767a328297a - Sigstore transparency entry: 1205647460
- Sigstore integration time:
-
Permalink:
quodeq/quodeq@f931ef3457ff0cc9d27d36631c4c89b18d3f00d3 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/quodeq
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f931ef3457ff0cc9d27d36631c4c89b18d3f00d3 -
Trigger Event:
release
-
Statement type:
File details
Details for the file quodeq-0.9.0-py3-none-any.whl.
File metadata
- Download URL: quodeq-0.9.0-py3-none-any.whl
- Upload date:
- Size: 620.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51c428f579d108403fa092d2d7dd2b88d36de4ae3d22101631935dcab337ecf5
|
|
| MD5 |
81c24388fa7628f5b720a0b44d9a0d3d
|
|
| BLAKE2b-256 |
8821fffefff959501daa84b4a263a67b8ace58fea836fd6bf6fea304a91d3d18
|
Provenance
The following attestation bundles were made for quodeq-0.9.0-py3-none-any.whl:
Publisher:
publish.yml on quodeq/quodeq
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
quodeq-0.9.0-py3-none-any.whl -
Subject digest:
51c428f579d108403fa092d2d7dd2b88d36de4ae3d22101631935dcab337ecf5 - Sigstore transparency entry: 1205647475
- Sigstore integration time:
-
Permalink:
quodeq/quodeq@f931ef3457ff0cc9d27d36631c4c89b18d3f00d3 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/quodeq
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f931ef3457ff0cc9d27d36631c4c89b18d3f00d3 -
Trigger Event:
release
-
Statement type: