file-type-counter-max
A tiny CLI that counts file types by extension in a folder, then exports a copy/paste-ready Markdown table or machine-parseable JSON summary. Built for repo audits, onboarding handoffs, cleanup reviews, and tech-mix discovery.
Install
Requires Python 3.11 or newer.
python3 -m pip install --user file-type-counter-max
Or install from source:
git clone https://github.com/<your-org>/file-type-counter-max.git
cd file-type-counter-max
python3 -m pip install --user .
After install, the command is file-type-counter-max.
Usage
file-type-counter-max /path/to/repo
file-type-counter-max .
file-type-counter-max /path/to/repo --format json
file-type-counter-max /path/to/repo --format markdown --min-count 2
Options
path: target directory to scan; defaults to the current directory.-f, --format: output mode;tablefor human-readable Markdown table,jsonfor machine-readable JSON.-d, --depth: maximum directory depth to recurse into; omit for unlimited depth.--min-count: only include extensions with at least this many files.-i, --ignore: comma-separated folder basenames to skip, such as.git,node_modules,__pycache__.--sort: sort order;countshows highest first,extshows alphabetical by extension.--help: show help message.
Output examples
Markdown table
| Extension | Count | Share |
| --- | ---: | ---: |
| .py | 181 | 54.0% |
| .toml | 42 | 12.6% |
| .md | 31 | 9.3% |
| .yml | 21 | 6.3% |
Sample run
Actual run against this repo with default table output:
| Extension | Count | Share |
| --- | ---: | ---: |
| .txt | 6 | 18.2% |
| (no extension) | 5 | 15.2% |
| .md | 4 | 12.1% |
| .pyc | 4 | 12.1% |
| .toc | 4 | 12.1% |
| .py | 3 | 9.1% |
| .html | 1 | 3.0% |
| .pkg | 1 | 3.0% |
| .pyz | 1 | 3.0% |
| .spec | 1 | 3.0% |
| .tag | 1 | 3.0% |
| .toml | 1 | 3.0% |
| .zip | 1 | 3.0% |
Release path
This project ships a single-command local install. For a ready-to-run release without an install step, use GitHub Releases or package it with pyinstaller or shiv.
Notes
- This CLI avoids paid dependencies and does not collect telemetry.
- Favorites or defaults are not stored; every run is computed fresh from the provided path.
Metadata
Release files for file-type-counter-max 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| file_type_counter_max-0.1.0.tar.gz | 6.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| file_type_counter_max-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.3 kB
Release files / file_type_counter_max-0.1.0.tar.gz
| Download URL | file_type_counter_max-0.1.0.tar.gz |
|---|---|
| Size | 6.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2a99d0da5f5bcc7ccf805a0b2f9fa216bb44f58ac6f3b8d2f2a551ee0190f203
|
|
BLAKE2b-256 checksum How to use checksums |
008160bf0a6d7bc20ca96d84de1c0413ed1d5b9fbaf6353a288eba60a6d8a804
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|
Release files / file_type_counter_max-0.1.0-py3-none-any.whl
| Download URL | file_type_counter_max-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
827c15bf28b7715d53b65777fcca996ddaa41c1e7ff7900c081ea6053be61152
|
|
BLAKE2b-256 checksum How to use checksums |
4e5346ed5d10e86c2b7b9ac2be4e26bbb81fccd92c4fc418e561498ba418d378
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|
Security for file-type-counter-max 0.1.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.