Mac system monitor, disk analyzer, and cleaner — built with Tauri 2 + Rust + Svelte.
| Tool | Minimum version | Notes |
|---|---|---|
| Node.js | 18.x (recommend 20.x) | Use nvm to manage versions |
| Rust | 1.77+ | Install via rustup |
| Xcode Command Line Tools | latest | Required for macOS native compilation |
node --version # need >= 18
rustc --version # need >= 1.77
xcode-select -p # should return a path
# 1. Install Rust (if not already)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# 2. Use correct Node version
nvm install 20
nvm use 20
# 3. Install npm dependencies
npm install
# 4. Start dev mode
npm run tauri dev
npm run tauri build
Output app is in src-tauri/target/release/bundle/.
.
├── src/ # Svelte frontend
│ ├── pages/ # Dashboard, Processes, DiskAnalyzer, Cleaner, Settings
│ ├── lib/
│ │ ├── api/ # Tauri command wrappers (TypeScript)
│ │ ├── stores/ # Svelte stores (metrics, processes, scanner)
│ │ ├── components/ # UI components
│ │ └── utils/ # formatBytes, formatDuration, formatPercent
│ └── App.svelte
├── src-tauri/ # Rust backend
│ └── src/
│ ├── commands/ # Tauri command handlers
│ ├── services/ # Business logic (monitor, scanner, cleaner)
│ ├── models/ # Rust data models
│ └── utils/ # format, safe_paths
├── package.json
└── src-tauri/tauri.conf.json
/System, /Library, ~/.ssh, etc.) are protected by default