A powerful, AI-enhanced desktop file organizer built with Tauri, React, and Rust. Automatically organize your files into projects, categorize loose files, and keep your workspace clean with intelligent scanning and planning.
- Smart Project Detection: Automatically identifies projects using 50+ markers (package.json, Cargo.toml, pyproject.toml, etc.)
- AI Project Renaming: Uses OpenAI to generate meaningful project names based on README, package.json, and other context files
- Intelligent Categorization: Organizes files by type (Images, Videos, Documents, Archives, etc.)
- Recursive Directory Scanning: Deep scan with smart ignore patterns (node_modules, .git, etc.)
- Safety Heuristics: Protects installed software, system folders, and Obsidian vaults
- Framework Detection: Prioritizes specific frameworks (Next.js, Django, Tauri) over generic markers
- Real-time Progress: Live stats showing scanned files and detected projects
- Visual Operation Cards: See exactly what will be moved before applying changes
- Reason Indicators: Each operation shows why it was planned (Project, Rule, Extension)
- Individual Removal: Hover over operations to remove unwanted moves with a red X icon
- Collision Handling: Smart renaming prevents file conflicts
- Full Undo Support: Revert entire batches of operations
- Operation History: Track all changes made in the current session
- Transactional Moves: All-or-nothing execution ensures data safety
- Persistent Settings: Config saved to app directory (survives across sessions)
- Custom Rules: Define your own file organization patterns
- Ignore Patterns: Exclude specific folders from scanning
- Project Markers: Add custom project detection files
- Starry Glass Theme: Beautiful dark theme with glassmorphism effects
- Animated Background: Dynamic particle system with floating stars
- Green Server Glow: Emerald accents for a tech-focused aesthetic
- Responsive Design: Smooth animations and hover effects
Hero section with scan controls and floating file type icons
Visual cards showing planned file moves with reasons and destinations
API key management and configuration preview
- Node.js (v18 or higher)
- Rust (latest stable)
- npm or yarn
-
Clone the repository
git clone <repository-url> cd organizer-application
-
Install dependencies
npm install
-
Run in development mode
npm run tauri dev
-
Build for production
npm run tauri build
The installer will be created at:
- Windows:
src-tauri/target/release/bundle/nsis/desktop-organizer_0.1.0_x64-setup.exe - macOS:
src-tauri/target/release/bundle/dmg/ - Linux:
src-tauri/target/release/bundle/appimage/
- Windows:
- Frontend: React 18 + TypeScript + Vite
- Backend: Rust + Tauri 2.0
- Styling: TailwindCSS + Framer Motion
- Icons: Lucide React
- AI Integration: OpenAI API (gpt-4o-mini)
- Select Target Directory: Enter the path to the folder you want to organize
- Start Scan: Click "Initiate Scan" to analyze the directory
- Review Operations: Check the planned moves in the Operations tab
- Apply Changes: Click "Apply X Changes" to execute the plan
- Undo if Needed: Use the Undo button in the History tab to revert changes
- Go to Settings tab
- Enter your OpenAI API key (starts with
sk-) - In the Operations tab, click ✨ AI Enhance
- The AI will analyze project contents and suggest better names
The config file is stored at:
- Windows:
%APPDATA%\com.deskorganizer.app\config.json - macOS:
~/Library/Application Support/com.deskorganizer.app/config.json - Linux:
~/.config/com.deskorganizer.app/config.json
- Images:
*.jpg,*.png,*.gif, etc. →Media/Images - Videos:
*.mp4,*.mkv,*.mov→Media/Videos - Documents:
*.pdf,*.docx,*.txt→Documents - Archives:
*.zip,*.rar,*.7z→Downloads/Archives - Installers:
*.exe,*.msi→Downloads/Installers
Supports 50+ project markers including:
- JavaScript/TypeScript:
package.json,next.config.js,vite.config.ts - Python:
pyproject.toml,requirements.txt,manage.py - Rust:
Cargo.toml - Go:
go.mod - Docker:
Dockerfile,docker-compose.yml - Unity:
ProjectSettings/,Assets/ - And many more...
- Installed Software Protection: Detects and ignores program installations
- System Folder Exclusion: Skips critical OS directories
- Obsidian Vault Protection: Preserves
.obsidianconfiguration - Smart Recursion: Avoids scanning into protected project folders
- Collision Prevention: Automatically renames files to prevent overwrites
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.