# repo-to-text `repo-to-text` is an open-source project that converts the structure and contents of a directory (repository) into a single text file. By executing a simple command in the terminal, this tool generates a text representation of the directory, including the output of the `tree` command and the contents of each file, formatted for easy reading and sharing. ## Features - Generates a text representation of a directory's structure. - Includes the output of the `tree` command. - Saves the contents of each file, encapsulated in markdown code blocks. - Copies the generated text representation to the clipboard for easy sharing. - Easy to install and use via `pip` and Homebrew. ### Install Locally To install `repo-to-text` locally for development, follow these steps: 1. Clone the repository: ```bash git clone https://github.com/kirill-markin/repo-to-text cd repo-to-text ``` 2. Install the package locally: ```bash pip install -e . ``` ### Installing Dependencies To install all the required dependencies, run the following command: ```bash pip install -r requirements.txt ``` ## Usage After installation, you can use the `repo-to-text` command in your terminal. Navigate to the directory you want to convert and run: ```bash repo-to-text ``` This will create a file named `repo_snapshot.txt` in the current directory with the text representation of the repository. The contents of this file will also be copied to your clipboard for easy sharing. ## Enabling Debug Logging By default, `repo-to-text` runs with `INFO` logging level. To enable `DEBUG` logging, use the `--debug` flag: ```bash repo-to-text --debug ``` ## Example Output The generated text file will include the directory structure and contents of each file. For a full example, see the [example output for this repository](examples/example_repo_snapshot_2024-06-08-09-56-58-UTC.txt). ## Running Tests To run the tests, use the following command: ```bash pytest ``` ## Uninstall To uninstall package, run the following command from the directory where the repository is located: ```bash pip uninstall repo-to-text ``` ## Contributing Contributions are welcome! If you have any suggestions or find a bug, please open an issue or submit a pull request. ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## Contact This project is maintained by [Kirill Markin](https://github.com/kirill-markin). For any inquiries or feedback, please contact [markinkirill@gmail.com](mailto:markinkirill@gmail.com).