HowlFlow is a wolf-themed mobile app built to help people with ADHD structure their day without the guilt. Block your time, lock into focus hunts, dump your thoughts, and celebrate every win — all while your data stays entirely on your device.
The strength of the pack is the wolf. You've got this.
- Schedule Blocks — Structure your day with ADHD-friendly time blocks: routines, focus sessions, breaks, planning, social, and light tasks. Fully customizable templates.
- Focus Hunt Timer — Distraction-free timer with haptic feedback and background notifications. Track focus sessions and build momentum over time.
- Brain Dump — Instantly capture racing thoughts with zero friction. Archive entries when you're ready — no pressure.
- Pack Report — Celebrate streaks, completed blocks, and focus minutes. Encouraging stats that never guilt you for off days.
- Local-First Architecture — All data stored on-device with MMKV. Optional iCloud sync puts you in control. No accounts, no servers, no tracking.
- Light and Dark Mode — Follows your system preference automatically. Dark mode is cozy den vibes, light mode is bright trail energy.
- Wolf Theming — Custom color palette, motivational wolf quotes, and encouraging completion messages throughout the experience.
-
Clone the repository:
git clone https://github.com/mrdemonwolf/HowlFlow.git cd HowlFlow -
Install dependencies:
pnpm install
-
Start the mobile dev server:
pnpm dev:mobile
-
Press
ito open in the iOS Simulator, or scan the QR code with Expo Go on your device.
| Layer | Technology |
|---|---|
| Framework | React Native 0.83 + Expo SDK 55 |
| Language | TypeScript (strict mode) |
| Routing | Expo Router (file-based) |
| Styling | NativeWind v5 preview + Tailwind CSS v4 |
| State Management | Zustand v5 + MMKV persist middleware |
| Local Storage | react-native-mmkv |
| Animations | React Native Reanimated 4 |
| Notifications | expo-notifications (local only) |
| Haptics | expo-haptics |
| Fonts | expo-google-fonts (Cinzel, JetBrains Mono, Montserrat, Roboto) |
| Docs Site | Next.js 15 + Fumadocs |
| Monorepo | Turborepo + pnpm workspaces |
| CI/CD | GitHub Actions + GitHub Pages |
- Node.js 20+
- pnpm 9.15+
- Xcode 16+ (for iOS Simulator)
- Expo CLI (installed automatically via npx)
-
Clone and install:
git clone https://github.com/mrdemonwolf/HowlFlow.git cd HowlFlow pnpm install -
Start the mobile app:
pnpm dev:mobile
-
Start the docs site:
pnpm dev:docs
-
Run on iOS Simulator (requires native build):
cd apps/mobile npx expo run:ios
pnpm dev— Start all dev servers via Turborepopnpm dev:mobile— Start Expo dev server onlypnpm dev:docs— Start Next.js docs dev server onlypnpm build— Build all appspnpm typecheck— Run TypeScript type checking across all appspnpm lint— Run linting across all apps
- TypeScript strict mode across all packages
- CI pipeline runs lint and typecheck on every push and PR
- NativeWind
classNameonly — no inline StyleSheet objects - Zustand for all shared state — no useState for cross-component data
HowlFlow/
├── apps/
│ ├── mobile/ # Expo React Native app
│ │ ├── src/
│ │ │ ├── app/ # Expo Router screens
│ │ │ │ ├── (tabs)/ # Tab navigator (schedule, timer, dump, wins)
│ │ │ │ └── settings.tsx
│ │ │ ├── components/ # Reusable UI components
│ │ │ ├── lib/ # Storage, constants, utilities
│ │ │ ├── stores/ # Zustand stores (schedule, timer, dump, stats, settings)
│ │ │ └── types/ # TypeScript interfaces
│ │ ├── assets/ # Images, fonts, icons
│ │ ├── app.json # Expo config
│ │ ├── metro.config.js # Metro bundler + NativeWind
│ │ └── global.css # Wolf theme tokens (light + dark)
│ └── docs/ # Fumadocs marketing site
│ └── src/app/ # Landing page, privacy policy, terms
├── .github/workflows/ # CI + GitHub Pages deployment
├── turbo.json # Turborepo task pipeline
├── pnpm-workspace.yaml # Workspace configuration
└── package.json # Root scripts and devDependencies
Questions, feedback, or just want to howl?
- Discord: Join my server
Made with love by MrDemonWolf, Inc.