The calm accountability app that helps you build real habits through gentle, proof-based check-ins.
Haru is an accountability app that uses AI to make sure you actually do what you said you'd do. It's not a habit tracker full of charts and streaks you can game. It's a mirror: you either show up with proof every day, or your streak dies.
Simple. Brutal. Honest.
- Set a habit (Gym, Code, or Study)
- One rule: show proof every day
- Miss once? Start over
- Simple. Calm. Consistent
- Upload proof β AI gently verifies it
- Gym: Recognizes your effort and equipment
- Code: Acknowledges your work and commits
- Study: Celebrates your learning materials
- No stock pics, no cheating
- Weekly streak view (β / β / pending)
- Monthly calendar: calm, clear
- Current & longest streak stats
- No pressure, just awareness
- Calm, supportive messaging
- "You're building something beautiful"
- AI as your peaceful companion
- Encouraging without pressure
- No distractions, no overwhelming features
- AI = one peaceful role: gently validate your progress
- Build your chain, one day at a time
- Node.js 18+
- npm, yarn, or pnpm
- PostgreSQL database
-
Clone the repository
git clone https://github.com/Mehulparekh144/haru.git cd haru -
Install dependencies
npm install # or yarn install # or pnpm install
-
Set up environment variables
cp .env.example .env.local
Fill in your environment variables:
DATABASE_URL="postgresql://postgres:password@localhost:5432/app" BETTER_AUTH_SECRET=your-secret-key NEXT_PUBLIC_BETTER_AUTH_URL=http://localhost:3000 OPENAI_API_KEY=openai-key CRON_SECRET=anysecret BLOB_READ_WRITE_TOKEN="blob_token_from_vercel"
-
Set up the database
npx prisma migrate dev npx prisma generate
-
Start the development server
npm run dev # or yarn dev # or pnpm dev
-
Open your browser Navigate to http://localhost:3000
- Framework: Next.js 15 with App Router
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: Shadcn UI + Radix UI
- Database: PostgreSQL with Prisma ORM
- Authentication: BetterAuth.js
- AI: Openrouter
- Deployment: Vercel (recommended)
src/
βββ app/ # Next.js App Router
β βββ (auth)/ # Authentication routes
β βββ (protected)/ # Protected dashboard routes
β βββ api/ # API routes
β βββ page.tsx # Landing page
βββ components/ # Reusable components
β βββ ui/ # Shadcn UI components
βββ lib/ # Utility functions
βββ server/ # Server-side code
β βββ api/ # tRPC routers
βββ styles/ # Global styles
Haru follows a calm, zen-like design philosophy:
- Gentle Colors: Warm, muted color palette
- Peaceful Typography: Serif for emotion, mono for process
- Minimal Interface: No distractions, focus on the core loop
- Proof-Based: External accountability through AI validation
- No Gamification: Simple, honest progress tracking
yarn dev # Start development server
yarn build # Build for production
yarn start # Start production server
yarn lint # Run ESLintnpx prisma studio # Open Prisma Studio
npx prisma migrate dev # Create and apply migration
npx prisma generate # Generate Prisma client
npx prisma db push # Push schema changesWe welcome contributions! Please see our CONTRIBUTING.md for guidelines.
- Built with Next.js
- UI components from Shadcn UI
- Icons from Lucide
- Typography from Google Fonts
- Auth from Better-Auth
- Cron Jobs Cron-Job
- AI-SDK + OpenRouter
Haru - Your gentle companion for building real habits πΈ
