Find your flow, every day. Plan tasks, build habits, journal, and stay focused with a delightful macOS app.
⚡ Note: ZenFlow is completely made by Vibe Coding — a project built entirely through flow, creativity, and AI-assisted development.
- Daily planning with a clean “Today” view
- Habit tracking with streaks and visual progress
- Journal entries for quick reflections
- Focus mode with ambient sounds and a Pomodoro-style timer
- Calendar overview of tasks and habits
- Native macOS notifications (grant permission on first run)
- Offline-first, local data storage
- macOS 10.15 (Catalina) or later
- Apple Silicon or Intel Mac
- Get the latest build from Releases: ZenFlow Releases
- Open the DMG, drag ZenFlow to Applications, then launch via Spotlight or Applications.
Since ZenFlow is not (yet) notarized by Apple, macOS Gatekeeper may block or warn you on first run:
- If you see “App is from an unidentified developer” → Right-click the app → Open → confirm.
- If you see “App is damaged and can’t be opened”, run this command in Terminal (replace with your path if different):
xattr -cr /Applications/ZenFlow.app
Prerequisites
- Node.js 18+
- Rust toolchain (for Tauri)
- Xcode Command Line Tools
Use the provided scripts in the scripts/
folder.
chmod +x scripts/launch-desktop.sh
./scripts/launch-desktop.sh
Production build (DMG/APP in src-tauri/target/release/bundle/
):
chmod +x scripts/build-production.sh
./scripts/build-production.sh
Notes:
- The scripts will generate icons, install deps when needed, type-check, lint, build the Next.js app, and then run/build Tauri.
- First run may take a while due to Rust and Node builds.
# Install deps (first time)
npm install
# Desktop (Tauri) development
npm run dev:desktop
# Build desktop app (DMG in src-tauri/target/release/bundle/dmg)
npm run build:desktop
# Optional: Web preview (Next.js only)
npm run dev
- Start in Today to add and check off tasks
- Create habits and keep streaks going
- Use Focus for timed sessions with ambient sounds
- Journal at the end of the day to reflect
💡 Tip: Desktop shortcut for Focus toggle (Start/Pause): ⌘⇧S
- Next.js 15 + React 18 + TypeScript
- Tauri 2 for macOS desktop packaging
- Tailwind CSS for styling
- Tauri plugins: notification, fs, sql, store, shell
- Local-first storage with optional SQLite (when available)
- No telemetry, no analytics
- Your data stays on device
- Works offline (internet only for external links/updates)
- Notifications: ensure permission is granted in System Settings > Notifications
- App blocked by Gatekeeper: right-click > Open (first run)
- Data location: stored locally in the app’s macOS data directory
GPL-3.0 — see LICENSE.
- Built with Tauri
- UI with Next.js + Tailwind CSS
- UI design with Google Stitch
- Icons by Lucide
This project is purely and completely developed with AI assistance, including:
- GitHub Copilot for in-editor coding support
- ChatGPT 5 for architecture, debugging, and documentation
- Claude 4 for planning, writing, and refinement
ZenFlow exists thanks to these tools, which collaboratively enabled its creation.