A Python tool to generate multi project, multi language code metric reports
Project description
Codemetrics
A multilanguage, multi project code metrics analysis tool.
Languages
Supported languages
- Python (with radon)
- Php (experimental)
- Typescript (experimental)
- TBD
Analysis types
Code analysis
Analyses code with cyclomatic complexity, maintainability index, halstead metrics.
Git analysis
Analyses git stats of the past months
Dependeny analysis
Analyzses composer, npm or pip dependencies
More dependencies TBD
Report formats
Html
Generates an easy to read dashboard
TODO: as this application generates multi project reports, add central dashboard to have project specific insights at first glance
Csv
Coming soon...
Json
Coming soon...
Cli
Coming soon...
Configuration
Configuration is for the moment only possible with the --config=<file>.json option. More TBD
Sample configuraiton:
{
"configs": {
"funny codemetrics": {
"base_path": "./", // base path to look at
"includes": [
"src/" // paths to include from the base path on
],
"excludes": [
"__pycache__" // exclude patterns of paths / files
],
"extensions": [
"py" // file extensions to look at
],
"git": { // if git is set, analyzes git history
"branch": "main" // git branch to look at
},
"composer": true, // looks for base_path/composer.json and analyzes dependencies - for php projects
"npm": true, // looks for base_path/package.json and analyzes dependencies - for ts/js projects
"pip": true,
// looks for base_path/requirements.txt or base_path/pyproject.toml and analyzes dependencies - for python projects
"reports": {
"html": "./build/report/codemetrics", // report should be put into this directory
"json-git": "./build/json-report/codemetrics-git.json" // file where to put git json report
// more types of reports TBA
}
},
// next project name: { next config... }
}
}
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 metripy-0.2.5.tar.gz.
File metadata
- Download URL: metripy-0.2.5.tar.gz
- Upload date:
- Size: 28.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14fc4a3e69d5cb61dc8c9b92fc29d89de686f30e06b9e2a53ecb8b04f74ea7fe
|
|
| MD5 |
5e355c2f0f0bf16e2f2724b2e3bda297
|
|
| BLAKE2b-256 |
69fcbc004f591296c6d9c7951e29db84e70a1ded38fec4c4167cd649e411ee31
|
File details
Details for the file metripy-0.2.5-py3-none-any.whl.
File metadata
- Download URL: metripy-0.2.5-py3-none-any.whl
- Upload date:
- Size: 45.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6680ee7583443bdd22405358bc3f3ab2981108db5ceb52d0c57767be8238ce60
|
|
| MD5 |
79867059b20123a9b34f6f281edbecfb
|
|
| BLAKE2b-256 |
2df0378d9892846a3e2e9c96027ef908455e29f314163bd6bbb6a5c741ef18b2
|