A collection of tools to flatten and process code repositories
Project description
Coderoller
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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b4bd7e2d4893af6e276aea35cada9c9cb8c0b1904640cea17300f0f70e4df24 |
|
MD5 | aeeec6cb945d19660e678af7e4df582c |
|
BLAKE2b-256 | 90811660ffa61d70be04248f618d528eb86743537193e0201bcea67166d100ad |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | abf174343e2172a8fa929855d3f9162c47953cd2b4afde024d620ecc7a43bb74 |
|
MD5 | 41140b0443887ad464120badd4bf3f16 |
|
BLAKE2b-256 | 678b1ba2d79ba9ad2f8ac0b3b8c1347a51b8a36c40c993b1fd82fad74cfbb3db |