#text-file #ai #utility #single-file #command-line-tool #cli

app repo2file-cli

A blazing fast CLI tool written in rust to turn a code repository into a single text file

3 releases

0.1.2 Jul 25, 2024
0.1.1 Jun 5, 2024
0.1.0 Jun 5, 2024

#1424 in Command line utilities

Download history 3/week @ 2024-08-01 12/week @ 2024-09-12 15/week @ 2024-09-19 9/week @ 2024-09-26 8/week @ 2024-10-03

167 downloads per month

MIT license

18KB
342 lines

repo2file-cli

repo2file-cli is a command-line tool designed to consolidate a code repository into a single text file. This can be useful for archiving, analysis, or sharing purposes.

Installation

To install repo2file-cli, you need to have Rust installed. If you don't have Rust installed, you can get it from rustup.rs.

Once you have Rust, you can install the repo2file-cli using cargo:

cargo install repo2file-cli

Usage

To use repo2file-cli, you can run the following command:

repo2file-cli <input> [OPTIONS]

Arguments

  • <input>: The directory or Git URL of the repository you want to process.

Options

  • --ignore-files <FILES>: Comma-separated list of files to ignore.
  • --ignore-dirs <DIRS>: Comma-separated list of directories to ignore.
  • --include-files <FILES>: Comma-separated list of files to include exclusively (cannot be used with --ignore-files or --ignore-dirs).
  • --output <OUTPUT>: The output file. Defaults to a file named after the current directory.

Examples

Convert a local repository

repo2file-cli /path/to/repository --output output.txt

Convert a GitHub repository

repo2file-cli https://github.com/username/repo --output output.txt

Ignore specific files and directories

repo2file-cli /path/to/repository --ignore-files *.md,*.json --ignore-dirs node_modules,.git

Include only specific files

repo2file-cli /path/to/repository --include-files *.rs,*.toml

Contributing

We welcome contributions! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add new feature').
  5. Push to the branch (git push origin feature-branch).
  6. Create a new Pull Request.

Development Setup

To set up your development environment, follow these steps:

  1. Clone the repository:
    git clone https://github.com/yourusername/repo2file-cli.git
    
  2. Change to the project directory:
    cd repo2file-cli
    
  3. Install the required extensions (if using VSCode):

Running Tests

You can run the tests using the following command:

cargo test

Build from source

you can install the binary from source while youre devin'

cargo install --path .

License

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

Dependencies

~15–25MB
~406K SLoC