fig-folder
Version:
A CLI tool to organize configuration files into a fig/ folder with safe mode option
96 lines (76 loc) • 4.46 kB
Markdown
# 🍑 Fig
```
███ ██
███████ ██ ███
█████ █████ ██ ██
██████ ██ ██ ███ ████ ███
██ ███ ██ ███ ███ ███ ███ ███
██ ███ █████ ███ ███ ██
█ ██ ███ ███ ██ ██ █
██ ███ ███ █ █ ██ ███
███ ██ ███ ██ ██ ██ ██
██ ███ ██ ███ ██ ██ ███
██ ███ ███ ██ ██ ███
██ ██ ██ ██ ██ ██ ██ ██
██ ██ ██ ███ █ ██ ██
██ ██ ██ ██ ███ ███ ██ ██
██ ██ ███ ██ ██ ██ ██ ██
██ ██ ██ ██ ██ ██ ██
██ ███ ██ ██ ██ ██ ██ ██
███ ██ ██ ████ ████ ████ ██
██ ██ ███ ████████ ████████ ███
███ ██ ██████ ████
████████ █████████████ ██████
███████████ ████████████
```
## What is Fig?
Fig is a command-line tool that organizes your project's configuration files into a neat `fig/` directory. It automatically categorizes and moves common configuration files like:
- **Linting**: ESLint configs
- **Formatting**: Prettier configs
- **TypeScript**: tsconfig files
- **Build Tools**: Next.js, Vite, Webpack, Tailwind configs
- **Environment**: .env files
- **Package Managers**: lock files
- **Git**: .gitignore, .gitattributes
- **Editor**: .editorconfig, VS Code settings
- **Testing**: Jest, Vitest, Cypress configs
- **Documentation**: README, LICENSE, etc.
## Usage
```bash
npm run fig
```
### Safe Mode (Zero Risk)
For completely safe organization that never moves or modifies your original files:
```bash
npm run fig -- --safe
```
This mode:
- ✅ **Never moves files** - originals stay in place
- ✅ **Never creates symlinks** - no permission issues
- ✅ **Zero risk of breaking imports** - nothing changes in your project
- ✅ **Pure organization** - just copies files to fig/ for viewing
## Features
- 🎨 Beautiful ASCII art display
- 📁 Automatic file categorization
- 📝 Generates organized README
- 🎯 Smart file detection
- ✨ Colored terminal output
## How it works
1. Scans your project root for configuration files
2. Creates a `fig/` directory if it doesn't exist
3. Moves files into the `fig/` directory
4. Generates a categorized README.txt listing all moved files
5. Displays a beautiful summary with colored output
## Categories
When you run `npm run fig`, your configuration files will be organized into these categories:
- **Linting** - Code quality and style enforcement
- **Formatting** - Code formatting rules
- **TypeScript** - TypeScript configuration
- **Build Tools** - Build and bundling configuration
- **Environment** - Environment variables and settings
- **Package Managers** - Dependency lock files
- **Git** - Version control configuration
- **Editor** - Editor-specific settings
- **Testing** - Test framework configuration
- **Documentation** - Project documentation files
Enjoy your Figs! 🍑