gitfetch-cli
v1.0.0
Published
A beautiful CLI tool to browse and download GitHub repositories
Maintainers
Readme
gitfetch 🖥️
A beautiful, interactive CLI tool to browse and download GitHub repositories. Built with love for developers who prefer the terminal.
✨ Features
- Beautiful TUI - Stunning ASCII art logo with a modern, centered interface
- Interactive File Browser - Navigate repository file trees with arrow keys
- File Selection - Select specific files or entire folders with Space
- Two Download Options:
- Clone entire repository with git
- Download only selected files
- Keyboard Navigation:
↑/↓- Navigate filesSpace- Select/deselect filesEnter- Open foldersEsc- Go backCtrl+A- Download all (clone)Ctrl+D- Download selected filesCtrl+C- Exit
🚀 Installation
# Using npx (no installation needed)
npx gitfetch
# Or install globally
npm install -g gitfetch-cli
gitfetch📖 Usage
1. Launch the CLI
npx gitfetch2. Enter a GitHub Repository URL
Type or paste a GitHub URL, for example:
facebook/reacthttps://github.com/microsoft/vscodeowner/repo
Press Enter to fetch the repository.
3. Browse Files
Use arrow keys to navigate the file tree:
↑/↓to moveSpaceto select filesEnterto open foldersEscto go back
4. Download
Choose your download option:
Ctrl+A- Clone the entire repository (uses git)Ctrl+D- Download only selected files
⌨️ Keyboard Shortcuts
| Key | Action |
|-----|--------|
| ↑/↓ | Navigate files |
| Space | Select/deselect file |
| Enter | Open folder |
| Esc | Go to parent folder |
| Ctrl+A | Clone entire repo |
| Ctrl+D | Download selected files |
| Ctrl+C | Exit |
🔧 Requirements
- Node.js 18+
- Git (for cloning repositories)
- Windows Terminal or iTerm2 (macOS) / gnome-terminal (Linux)
🌐 Environment Variables
| Variable | Description |
|----------|-------------|
| GITHUB_TOKEN | Your GitHub personal access token (to avoid rate limits) |
Setting up GitHub Token (Optional)
If you hit GitHub API rate limits, create a personal access token:
- Go to GitHub Settings → Tokens
- Generate a new token (classic)
- Set it as an environment variable:
# Windows
set GITHUB_TOKEN=your_token_here
gitfetch
# Linux/macOS
export GITHUB_TOKEN=your_token_here
gitfetch🛠️ Development
# Clone the repo
git clone https://github.com/yourusername/gitfetch-cli.git
cd gitfetch-cli
# Install dependencies
npm install
# Build
npm run build
# Run
npm start
# or
node dist/index.js📝 License
MIT License - feel free to use and modify!
