Create Project Markdown banner
SpillwaveSolutions SpillwaveSolutions

Create Project Markdown

Documentation community

Description

This tool reads an entire directory of source files and creates a single markdown file. I use it to easily import a small code base into chatGPT or Claude. It works really well with Claude Projects too.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Unified Markdown Documentation Generator

The Unified Markdown Documentation Generator is a Python utility script designed to automate the consolidation of a project's codebase into a single, navigable markdown file. This script scans through all directories within a specified project folder, seamlessly incorporating the contents of various file types into a unified markdown document.

Installation

  1. Clone the repository or download the script files.

  2. Navigate to the script directory in your terminal.

  3. Run the following command to install the script:

    pip install .
  4. Add the following line to your `.zshrc` file to make the script executable from anywhere:

    export PATH=$PATH:/path/to/script/directory

    Replace `/path/to/script/directory` with the actual path to the directory containing the script. Or create a symbolic link to this file assuming you are in the root directory of this project.

      ln -s $(pwd)/create_project_markdown.py /usr/local/bin/create-project-markdown
  5. Restart your terminal or run `source ~/.zshrc` to apply the changes.

Usage

To generate a markdown file for your project, navigate to the project's root directory in your terminal and run the following command:

create-project-markdown [--include REGEX] [--exclude REGEX] [--outfile FILENAME] [--log LOG_LEVEL]
  • --include REGEX or -i REGEX: (Optional) Regular expression pattern to include specific files or directories.
  • --exclude REGEX or -e REGEX: (Optional) Regular expression pattern to exclude specific files or directories.
  • --outfile FILENAME or -o FILENAME: (Optional) Specify a custom output filename. Default is project_structure.md.
  • --log LOG_LEVEL or -l LOG_LEVEL: (Optional) Set the logging level. Default is INFO, configurable through the config file.

If no include or exclude filters are provided, the script will process all supported file types.

Configuration

The script can