A GTD-style live dashboard for tracking all your inboxes with "inbox zero" timers. Built with Electron, React, TypeScript, and Zustand.
- π΄ Live Data: Automatic polling of digital inboxes (iMessage, WhatsApp, OmniFocus, file system, browser tabs, AI chats, Photos, Email)
- β±οΈ Inbox Zero Timer: Tracks time since each inbox was last cleared to zero, with visual states at 12h (warning) and 24h (due)
- π¦ Physical Inbox Tracking: Manual tap-to-clear for physical inboxes (mailbox, notebooks, etc.)
- π Deep Links: Click any inbox card to open the corresponding app
- πΎ Persistent State: Timer state persists across app restarts
- π Desktop Notifications: Get notified when inboxes become overdue
- π¨ 6 Themes: Deep Focus, Ocean, Forest, Sunset, Midnight, Monochrome
- β¨οΈ Keyboard Shortcuts: Cmd+R to sync, Cmd+, for settings, Cmd+/ for help
- π Privacy-First: All data stays local, no cloud sync
- Email accounts (iCloud, Gmail, School)
- iMessage
- Downloads folder
- Desktop
- Screenshots
- Photos app (recent imports)
- OmniFocus Inbox
- Browser tabs (Comet)
- ChatGPT
- Claude
- Gemini
- Physical Mailbox
- Notebooks
- Backpack Folder
- In-Tray
- macOS 12+ (for JXA/AppleScript integrations)
- Node.js 18+
- Full Disk Access permission (for iMessage/WhatsApp database access)
- OmniFocus 4 Pro (for OmniFocus integration)
npm installFor iMessage and WhatsApp integration:
- Open System Settings β Privacy & Security β Full Disk Access
- Add your terminal app and/or the Inbox Zero Dashboard app
# Start Vite dev server and Electron
npm run electron:dev# Build for distribution
npm run electron:buildQueries the SQLite databases directly:
- iMessage:
~/Library/Messages/chat.db - WhatsApp:
~/Library/Group Containers/group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite
Uses JXA (JavaScript for Automation) to query OmniFocus 4. Based on patterns from OmniFocus-MCP.
Integrates with the Inbox Importer AI Chats project.
Reads from conversation-index.json to track new conversations.
Uses AppleScript to count open tabs in Comet browser. Falls back to manual tracking if AppleScript access is unavailable.
Uses chokidar to watch Downloads, Desktop, and Screenshots folders.
- Electron: Cross-platform desktop app
- React 18: UI framework
- TypeScript: Type safety
- Vite: Build tool
- Zustand: State management with persistence
- better-sqlite3: SQLite database access
- chokidar: File system watching
βββ electron/
β βββ main.cjs # Main process
β βββ preload.cjs # Secure IPC bridge
β βββ connectors/ # Data source connectors
β βββ messaging.cjs # iMessage/WhatsApp
β βββ omnifocus.cjs # OmniFocus JXA
β βββ filesystem.cjs # File system watcher
β βββ browser.cjs # Browser tabs
β βββ ai-chats.cjs # AI chat importer
β βββ photos.cjs # Photos app
βββ src/
β βββ components/ # React components
β βββ store/ # Zustand stores
β βββ types/ # TypeScript types
β βββ App.tsx # Main app
βββ package.json
- SETUP.md - Complete setup guide for all integrations
- INTEGRATIONS.md - Technical details on how each integration works
- TESTING.md - Testing guide and checklist
Cmd+R- Sync all inboxesCmd+,- Open settingsCmd+/- Show helpCmd+Q- Quit appCmd+W- Close window
The main dashboard shows all your inboxes organized by category with live counts and timers.
Configure themes, email accounts, and notification preferences.
- Green - At zero, timer counting up
- Blue - Active with items to process
- Orange - 12+ hours since last zero (warning)
- Red - 24+ hours since last zero (due!)
This is a personal productivity tool, but contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
Found a bug? Please open an issue with:
- macOS version
- App version
- Steps to reproduce
- Expected vs actual behavior
- Console logs (if applicable)
- Windows/Linux support (limited - some integrations are macOS-only)
- Slack/Discord integration
- GitHub notifications
- Calendar events as inbox
- Custom inbox types
- Export/import settings
- Stats and analytics
- Mobile companion app (view-only)
Built with inspiration from:
- OmniFocus-MCP - OmniFocus automation patterns
- elie222/inbox-zero - Email management approach
- Your existing tools: Daily Brief Skill, Inbox Importer AI Chats, Blinders
MIT License - see LICENSE file for details
Made with β€οΈ for GTD practitioners who want to stay on top of all their inboxes.