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. It's recommended to use this parameter to avoid unexpected files being added to the map.
  • 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'). Note this is overruled by the .gitignore. Defaults to: 'py,md,toml,lock,yaml,ipynb'.
--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
--dirs-only Flag (no value) โŒ If set, only directories and subdirectories will be mapped (useful with larger codebases).

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
โ”œโ”€โ”€ .pre-commit-config.yaml
โ”œโ”€โ”€ 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.2.1.tar.gz (23.1 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.2.1-cp313-cp313-win_amd64.whl (782.7 kB view details)

Uploaded CPython 3.13Windows x86-64

repo_mapper_rs-0.2.1-cp313-cp313-manylinux_2_34_x86_64.whl (919.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (769.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

repo_mapper_rs-0.2.1-cp312-cp312-win_amd64.whl (783.4 kB view details)

Uploaded CPython 3.12Windows x86-64

repo_mapper_rs-0.2.1-cp312-cp312-manylinux_2_34_x86_64.whl (920.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (770.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

repo_mapper_rs-0.2.1-cp311-cp311-win_amd64.whl (783.8 kB view details)

Uploaded CPython 3.11Windows x86-64

repo_mapper_rs-0.2.1-cp311-cp311-manylinux_2_34_x86_64.whl (921.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (772.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

repo_mapper_rs-0.2.1-cp310-cp310-win_amd64.whl (783.9 kB view details)

Uploaded CPython 3.10Windows x86-64

repo_mapper_rs-0.2.1-cp310-cp310-manylinux_2_34_x86_64.whl (921.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

repo_mapper_rs-0.2.1-cp310-cp310-macosx_11_0_arm64.whl (772.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: repo_mapper_rs-0.2.1.tar.gz
  • Upload date:
  • Size: 23.1 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.2.1.tar.gz
Algorithm Hash digest
SHA256 43d4f848dfdfc0abac4e8936f456bfcb1572088c3a5c76182d6420a130608393
MD5 3112e2be36ea0bf66fb27d8e7e134678
BLAKE2b-256 9f8be0d4f6c291f820dec8ec25d05c3ca864c22cd2c4ff47affcd53b1377fee8

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1.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.2.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 aaf54cd10c05025650203e85b5d2e5bb96237e319de1adb4af5d5802674ccd20
MD5 7559a345047cca793f3cd80a3f40892f
BLAKE2b-256 b946dfebfc3eafcd19ab7fdf42c5e066510398f68293cdaafbd3b6e4f00707df

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0c6863dff2eb1578357c35a7e6e8480e28b5d918c20f19695aa865852e5c4f9c
MD5 b2aa810ee50bbfb5a091a4409ab4986d
BLAKE2b-256 4136d68fb7eca88d98934817ca361fa487497ae15b562ba1c30b7c0f1fad0626

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2afb3d3655449322322fc93128ab3405b24a613425bb417d7d90dfb8a87f1468
MD5 fbe95b382485bf2eb86798be8c629cb1
BLAKE2b-256 2efc82b87dfc2280ca14e3954639914b0420722dba966327cdf4541f919e1e1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 30573b4392eabb4416b522d00f3d53cb13458808f7a752dbae7e7ceb548093b8
MD5 cbb80a8e18208b967ed77999a5e7109e
BLAKE2b-256 fb90380dc816b1029be1fd96cd098fb46043fd9c70096b64c1b9e6bee5da384e

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 ec87b2f2e515bce3989ffa6dc17b39b7fbe4548d880823ebcab7269adee2a614
MD5 ff0a894726ada0d33f7479092c25801e
BLAKE2b-256 20553655520c0bce7f4fcd1f7a33e4e78257787c4b885644f8d416ced20cdabf

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 623c442cdbdbfcd7ff467311c0af1ddcecc8f901cc756ea2e3225b0c233a19e2
MD5 85513e3ae53427e1a1d82914893b35c2
BLAKE2b-256 67278cba9464c3f2baf7cde55698b82993df35a23908e85410d10622e9839e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fcaf568cb28cd66dbfdc99f5bfd17a37d5f6351711ea6d37a47302e193981c69
MD5 f67f07bfe4ae9e415a1800b7c1504a59
BLAKE2b-256 31811f104055b4e335cc66a71d1a09977fc2f30c17938a1ddc70be3bfc8629a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 6eb9338579860daac4282b7ae60e279f8dcb544caf8716ebc17425e22bf9b168
MD5 9d251cf18d1050af01a5243ab85c6d66
BLAKE2b-256 b24e11fd811ed6551bcddd8190227517c51674b887d9ad0f83e183d4e0b3aca5

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3da917f51395ea19ba9acb297c0feb72c17341b0e3a1a0c2145e62dac3e5537d
MD5 940172eea37ee0ce6a0bc5d79552d0a5
BLAKE2b-256 1f13cdf4844cba988b678db8d9b855f4eda3361a6fe82c9331a7de8187afbdf9

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c43c7c963eb7f330b7caebb78df56b97219a55d12a97cd21a654ba611e147649
MD5 3a78015ea87dee1adc84be5eb6e7173d
BLAKE2b-256 330b0f63efce9767fafa4a7e4f901e31a46ad3c0812b064fe5c9c7bb67a66079

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 a94b36cf2231ab46a3c2fb70c08ace7080096bb715197d3a7ed98b9955a37349
MD5 20c3013df94c8b31bd874d643eb13274
BLAKE2b-256 772ecfd31a35774e6ee65e9516dd0f73c504d9d87a54e021048174b453738621

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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.2.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for repo_mapper_rs-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bf24eff41ed2f06da6768a1c659edd25bb77421fed384561e9ce6df5ac640174
MD5 a1fc022906e18a12b75aee415c06a72f
BLAKE2b-256 3488f8f1a9d63a3adace101c3ce607451839602ba5a499490849c3980ce61641

See more details on using hashes here.

Provenance

The following attestation bundles were made for repo_mapper_rs-0.2.1-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