flat-project
is a command-line tool that generates a flat structure of your project and creates a tree view to easily visualize it.
It's useful for getting a quick overview of your project structure or for creating a simplified version of your project directory.
I've personally been using it to quickly upload files for a project on claude.ai.
You can install flat-project
globally using npm:
npm install -g flat-project
or alternatively, you can install it locally using npm:
npm install --save-dev flat-project
After installation, you can use flat-project
by running:
flat-project
This will:
- Create a
.flat
directory in your current project - Generate a
flat.txt
file inside.flat
with a tree view of your project structure - Copy all non-ignored files into the
.flat
directory - Update your
.gitignore
to include the.flat
directory (if a.gitignore
file exists)
flat-project
uses a .flatignore
file to determine which files and directories to ignore. If this file doesn't exist, it will be created with default ignore patterns. You can modify this file to customize which files and directories are ignored.
Default ignore patterns include:
flat-project.js
.git
.flatignore
node_modules
*.log
.vscode
.gitignore
.firebase
.flat
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
If you find a bug or have a suggestion for improvement, please open an issue on the GitHub repository.