Skip to main content

A collection of tools to flatten and process code repositories

Project description

Coderoller

Coderoller banner

Coderoller is a Python utility that flattens a source code repository into a single markdown file. This tool collects all relevant source and configuration files, including Python, JavaScript, TypeScript, HTML, CSS, JSON, and more, and compiles them into a markdown document. The flattened file provides an organized overview of the repository's contents, making it easy to use in conjunction with LLMs. Simply copy the contents of the flattened file and paste it into your LLM chat context. The flattened form is also great for API-based uses of LLMs in automated workflows.

Features

  • Flattens source code repositories into a single markdown file.
  • Supports multiple file types including .py, .js, .jsx, .ts, .tsx, .swift, .go, .java, .c, .cpp, .h, .hpp, .cs, .lua, .rb, .php, .pl, .html, .css, .json, .toml, .md, .yaml, .yml, .conf, .ini, and .sh.
  • Automatically includes README files if present, placing it at the start of the flattened file.
  • Excludes hidden files and directories (those starting with a dot), specific directories (build, dist, node_modules, __pycache__), specific files (lockfiles, hidden files, other flattened files, etc.), and any paths specified in .gitignore.
  • Supports flattening directly from Git URLs even if the repository is not cloned locally.

Installation

Coderoller requires Python 3.10 or later.

Using pipx

You can install Coderoller globally using pipx:

pipx install coderoller

Usage

To flatten a source repository, use the coderoller-flatten-repo script.

coderoller-flatten-repo /path/to/reponame

To flatten a source repository directly from a Git URL, use the coderoller-flatten-repo script with the repository URL:

coderoller-flatten-repo https://github.com/username/reponame.git

Both commands will create a markdown file named reponame.flat.md in the current working directory, containing the flattened contents of the repository.

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

coderoller-0.4.2.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

coderoller-0.4.2-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file coderoller-0.4.2.tar.gz.

File metadata

  • Download URL: coderoller-0.4.2.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for coderoller-0.4.2.tar.gz
Algorithm Hash digest
SHA256 3b4bd7e2d4893af6e276aea35cada9c9cb8c0b1904640cea17300f0f70e4df24
MD5 aeeec6cb945d19660e678af7e4df582c
BLAKE2b-256 90811660ffa61d70be04248f618d528eb86743537193e0201bcea67166d100ad

See more details on using hashes here.

File details

Details for the file coderoller-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: coderoller-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for coderoller-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 abf174343e2172a8fa929855d3f9162c47953cd2b4afde024d620ecc7a43bb74
MD5 41140b0443887ad464120badd4bf3f16
BLAKE2b-256 678b1ba2d79ba9ad2f8ac0b3b8c1347a51b8a36c40c993b1fd82fad74cfbb3db

See more details on using hashes here.

Supported by

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