A sleek, terminal-based project launcher that helps you quickly find and open your projects with an intuitive interface. Built with Go and the Bubble Tea framework, it provides a beautiful TUI (Terminal User Interface) for navigating through your projects.
- π Fast Project Discovery: Automatically scans directories to find projects based on markers like
.git,package.json,go.mod, etc. - π Rich Project Information: Displays project name, type, size, file count, and Git status
- β¨οΈ Intuitive Navigation: Use arrow keys to navigate, Enter to open projects, and other keyboard shortcuts
- ποΈ Smart Sorting: Sort by any column with left/right arrows, toggle sort order with 'S'
- π Cross-Platform: Works seamlessly on Linux, macOS, and Windows
- π¨ Beautiful UI: Clean, modern interface with color-coded information
β/βorh/l: Navigate between columns to sort by different criteriaEnter: Open the selected project in your default file managerS: Toggle sort order (ascending/descending)Q,Esc,Ctrl+C: Quit the application
- Go 1.16 or higher
# Clone the repository
git clone https://github.com/lemantorus/RepoScope.git
cd RepoScope
# Install dependencies
go mod tidy
# Build and install
go installgo run main.go [path]If no path is provided, it will scan the current working directory.
# Scan current directory
reposcope
# Scan specific directory
reposcope /path/to/directoryThe launcher automatically detects project types based on the presence of these files/directories:
- Git:
.gitdirectory - JavaScript/Node.js:
package.json - Go:
go.mod - Python:
requirements.txtorpyproject.toml - Rust:
Cargo.toml - Java:
pom.xml - PHP:
composer.json
The launcher provides smart Git status detection:
Synced: Repository is clean and has a remoteUncommitted: Repository has uncommitted changesNo Remote: Repository exists but has no remote configuredNo Commits: Repository exists but has no commits yetβ: Not a Git repository
RepoScope/
βββ main.go # Main application logic
βββ go.mod # Go module definition
βββ go.sum # Go module checksums
βββ images/ # Project screenshots
βββ working_result.png
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Bubble Tea - A powerful TUI framework
- Styled with Lip Gloss - A declarative styling system
- Inspired by the need for a fast, terminal-based project launcher
