Live · Trie (Prefix Tree)
Gitmap - Minimal Project Manager
A smart tool to discover, organize, and clean your local Git projects. Easily delete unused node_modules. No more hunting through folders.
- Architected a high-performance local repository manager, reducing path search times from *850ms to 2ms (a 425x improvement)* using *Trie traversal* instead of linear scanning
- Implemented a Trie (Prefix Tree) in Rust to accelerate hierarchical path-based searches, reducing time complexity from *O(n*m) to O(m)* and improving memory efficiency by 40%.
- Developed a thread-safe LRU cache to minimize disk I/O, achieving a 95%+ hit ratio and transforming repository access from a linear O(n) operation to a constant-time O(1) lookup.
Trie (Prefix Tree) Rust Typescript Tauri
Readme
gitmap - Local Git Repository Manager
A smart tool to discover, organize, and clean your local Git projects.
No more manually digging through folders or trying to remember where you cloned that one project last month. GitMap helps you stay organized and keeps your workspace clean by also letting you delete unused node_modules with a single click.
https://github.com/user-attachments/assets/98e7dcab-b82b-4838-b449-3d9ad6a4ed55
Features
Auto-discovers all Git repositories on your system
Pin frequently used repositories for quick access
Group related projects into custom collections
Delete unused node_modules from non-active projects to free up disk space
Setup & Installation
Prerequisites
For system dependencies and Rust installation, please refer to the official Tauri prerequisites documentation.
Node.js (Required for frontend development)
- Download and install the LTS version from Node.js website
- Verify installation:
node -v # Should show v20.x.x or higher
npm -v # Should show version number
Development Setup
1. Clone the Repository
git clone <repository-url>
cd gitmap
2. Install Dependencies
# Using pnpm (recommended)
pnpm install
# Using npm
npm install
3. Install Tauri CLI
# Using pnpm
pnpm add -D @tauri-apps/cli
# Using npm
npm install -D @tauri-apps/cli
4. Development Mode
# Start development server
pnpm tauri dev
# Or with npm
npm run tauri dev
Building for Production
Build for Current Platform
# Build for your current platform
pnpm tauri build
# Or with npm
npm run tauri build
Project Structure
├── src/ # React frontend
│ ├── components/ # React components
│ ├── pages/ # Application pages
│ ├── hooks/ # Custom React hooks
│ └── types/ # TypeScript definitions
├── src-tauri/ # Rust backend
│ ├── src/ # Rust source code
│ └── Cargo.toml # Rust dependencies
└── public/ # Static assets
Technologies Used
- Frontend: React + TypeScript + Vite
- Backend: Rust + Tauri
- UI: Tailwind CSS + shadcn/ui
- Icons: Lucide React
- Build Tool: Vite
- Package Manager: pnpm