Skip to main content

No project description provided

Project description

repo-mapper-rs ๐Ÿฆ€

Rust implementation of repo_mapper.

What it does:

A CLI tool to scan a code repository and generate a structured file tree map, inserted into your README.md written in Rust. The map is fenced inside a markdown code block under a # Repo map section, if one exists the existing one is replaced, else it is appended to the bottom of the README.md.

Supported functionality:

  • .gitignore
  • file extension filtering
  • directory exclusion
  • ignore hidden files

Installation

pip install repo-mapper-rs

Or

uv add repo-mapper-rs

Example usage:

python -m repo_mapper \
  --repo-root "/path/to/my_repo" \
  --readme-path "/path/to/my_repo/README.md" \
  --gitignore-path "/path/to/my_repo/.gitignore" \
  --allowed-exts "py,rs,toml" \
  --ignore-dirs ".venv,target" \
  --ignore-hidden

This command:

  • Traverses /path/to/my_repo
  • Respects files excluded in .gitignore or listed in --ignore-dirs
  • Includes only files with extensions .py, .rs, .toml
  • Skips hidden files and directories (those starting with a dot)
  • Inserts or updates the # Repo map section in the README

Args

Argument Type Required Description
--repo-root str โœ… Path to the root of the repository to scan
--readme-path str โœ… Path to the README file that will be modified
--gitignore-path str โœ… Path to the .gitignore file
--allowed-exts Comma-separated str โŒ Extensions to include (e.g. 'py,rs,md'). If not supplied, all extensions will be evaluated. Note this is overruled by the .gitignore.
--ignore-dirs Comma-separated str โŒ Directories to exclude (e.g. '.venv,target'). If not supplied, all directories will be evaluated. Note this is overruled by the .gitignore.
--ignore-hidden Flag (no value) โŒ If set, hidden files and directories will be ignored

Repo map

โ”œโ”€โ”€ .github
โ”‚   โ””โ”€โ”€ workflows
โ”‚       โ”œโ”€โ”€ ci.yaml
โ”‚       โ””โ”€โ”€ publish.yaml
โ”œโ”€โ”€ python
โ”‚   โ””โ”€โ”€ repo_mapper
โ”‚       โ”œโ”€โ”€ __init__.py
โ”‚       โ””โ”€โ”€ __main__.py
โ”œโ”€โ”€ src
โ”‚   โ”œโ”€โ”€ core
โ”‚   โ”‚   โ”œโ”€โ”€ adapters.rs
โ”‚   โ”‚   โ”œโ”€โ”€ converters.rs
โ”‚   โ”‚   โ”œโ”€โ”€ domain.rs
โ”‚   โ”‚   โ”œโ”€โ”€ mod.rs
โ”‚   โ”‚   โ”œโ”€โ”€ parsing.rs
โ”‚   โ”‚   โ””โ”€โ”€ test_utils.rs
โ”‚   โ”œโ”€โ”€ api.rs
โ”‚   โ””โ”€โ”€ lib.rs
โ”œโ”€โ”€ tests
โ”‚   โ””โ”€โ”€ integration_tests.rs
โ”œโ”€โ”€ Cargo.lock
โ”œโ”€โ”€ Cargo.toml
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ pyproject.toml
โ””โ”€โ”€ uv.lock
::

Ret codes

RetCode int description
NoModification 0 The Repo Map reflects the current state of the repo.
ModifiedReadme 1 The README was updated.
FailedParsingFile 2 Failed to read the file to string.
FailedToWriteReadme 3 Failed to write the modified README to file.
InvalidFilename 4 The given README.md or .gitignore path does not match the expected basename.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repo_mapper_rs-0.1.0.tar.gz (16.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

repo_mapper_rs-0.1.0-cp313-cp313-win_amd64.whl (775.0 kB view details)

Uploaded CPython 3.13Windows x86-64

repo_mapper_rs-0.1.0-cp313-cp313-manylinux_2_34_x86_64.whl (910.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.1.0-cp313-cp313-macosx_11_0_arm64.whl (762.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

repo_mapper_rs-0.1.0-cp312-cp312-win_amd64.whl (775.3 kB view details)

Uploaded CPython 3.12Windows x86-64

repo_mapper_rs-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl (911.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (763.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

repo_mapper_rs-0.1.0-cp311-cp311-win_amd64.whl (776.0 kB view details)

Uploaded CPython 3.11Windows x86-64

repo_mapper_rs-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl (912.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (766.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

repo_mapper_rs-0.1.0-cp310-cp310-win_amd64.whl (775.9 kB view details)

Uploaded CPython 3.10Windows x86-64

repo_mapper_rs-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl (912.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (766.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file repo_mapper_rs-0.1.0.tar.gz.

File metadata

  • Download URL: repo_mapper_rs-0.1.0.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for repo_mapper_rs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8f65c967c099f8896a3575c489dc86e7673d8db13f5331145d87a37887a1ee3e
MD5 b4b30918ec09b6b5b062e7494fe2a1de
BLAKE2b-256 21a353d5397cdb2b9209a652a317e32063501ec1283fb7a45f4610478ae7edc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0.tar.gz:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ac53d357d73dc21da6beb6a549f154ed3b776c4657d1f0a1cdd3e1555be4ec9c
MD5 7f8f811a25c6ad07063a5ec52688d355
BLAKE2b-256 4f46739c7dd123717a54c511d60f94a915d8725004f15f0eff814e2beb6cadbc

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp313-cp313-win_amd64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 6c016896ada770fb67da49ef71bda424a8ecad0b2bc178ece38bfcbe978c90dc
MD5 16b7363b14536b235fe961e7ed221e21
BLAKE2b-256 d3b7a46d6626ef37b2ac42678c422b3501cc1e58456891b2b471ab5806aa7e4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d49b88530e51c30064cb100fb1ae72cc6c317c0e718041860742d96071d01e3
MD5 c485f03d8e795810b41160d99bcf6a2b
BLAKE2b-256 59db883b91b77be6460383788f4714074f689b8aae1d6f7ddd25a75a6ab02e17

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e4e4b1f509ad7154e07bfe6672c1634300be90d89267e20511c77507f5515d6d
MD5 34ff00793ffd7508c83c1b8832e233b3
BLAKE2b-256 ea11f672d40fac302ebcc1507aabd912757e2ee10e252694f6e6d2ba142717b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 987ba34fbdb1acf60c067c08bf64328043393cdbc6771f9f74e503b4647a5e6c
MD5 9fa5f87ea1fb309c698e916cc25e3bf0
BLAKE2b-256 425fe30652f097c01fcbbf79066a5a23ad1668ace31608ef9c8fbbb1491795d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 89cb65f8dee47f630894204b51dd9ebce44509704bbee54d5739728f5ca17b4f
MD5 00468a30ca5b73d0ccceb8aaf9b397e5
BLAKE2b-256 1eb6926acd36a6365f6a15207283f4ba41a482a197ef18f4695084289c683c87

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4fc43099d5428667f80a3acea985bf12125c5c5a020bb4be226ff1c7d327e4ee
MD5 b7a8a886a53d920061a18666e285ed03
BLAKE2b-256 10672d272f8f099b476453740b744362cd521169b56f2f0b0d33249e1678c392

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 29ade489618e42754c8391e7b89f290199bf0ba0fb4126f7b27aa48c3f6ae838
MD5 b063f8a71fd7f91ca0049369e21f7c08
BLAKE2b-256 a467e1662d0a072a688527e366024e144aa9ffd90a90aef84a94888e11f54028

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d977bee1a2129049de4a6a23f032ee632601b7773539d2137849ce1941dbedac
MD5 c2ddfd524d8e538a1422976783645ae0
BLAKE2b-256 bd4c2045af22d5d4011f9feffc6ade3f88eecaeff6d307e304fc7c4147d1af1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 07c6f3c3bb9696710a04e8d604fcab3ab2ec4ba9a697608b0ab210c78f67f9f6
MD5 0c66ca9bcab874279ea802c274d6d340
BLAKE2b-256 a78e942056a28dc5f840ef96c607b4881a9ab6c7d46241bd16730dbb6c641e39

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp310-cp310-win_amd64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b66ed3d10b1e020f7915b6572b899b4bb2c26b66466e56a751bf291b1191b196
MD5 4fb1ac151ebee4a7bea87c3b325b4c10
BLAKE2b-256 e8f2081ee8493a22d3f092243f71a2bbb3fd24ade77e1ac4846f16ed56ce38b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file repo_mapper_rs-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8eade2ab95fbd286878f86fa71b0778ab4a1eaedff8c5ca024f3e898a951e1c3
MD5 8d56686d595d7c4e6aa7e71636da2760
BLAKE2b-256 b0ffbb451f8212db37f2be6ec56da597bc23227c9e671b9e4de3e46712fa061f

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.1.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yaml on second-ed/repo-mapper-rs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page