A supportive personal tracking application for monitoring and reducing cigarette and vape consumption—built with awareness, not judgment.
The Vision
BreatheFree is designed for anyone trying to get more aware of their smoking habits. Whether your goal is to quit completely, reduce consumption, or simply track spending, BreatheFree provides the tools and insights you need to make progress.
The app helps you:
- Track consumption effortlessly — Log cigarettes and vapes with one tap
- Generate shareable photo cards — Clean visuals for Instagram
- AI-powered coaching — Understand your patterns over time
It's not about judgment—it's about data, clarity, and a little bit of fun.
Core Features
📊 Dashboard
- Today's Progress — Real-time overview of daily consumption
- Daily Limits — Compare actual consumption against personalized limits
- Quick Logging — One-tap entry with optional context (triggers, location, notes)
- Dark Mode — Comfortable viewing in any lighting
📈 Analytics & Trends
- Consumption Trends — Visualize patterns over time
- Cost Analysis — Track spending and projected monthly costs
- Trigger Insights — Identify what causes you to smoke
- Statistics — Daily, weekly, and monthly breakdowns
🎯 Goal Setting
- Multiple Goal Types:
- Cigarette reduction targets
- Vape reduction targets
- Complete cessation (quit entirely)
- Cost reduction goals
- Progress Tracking — Visual indicators for motivation
- Target Dates — Set realistic timelines
⚙️ Personalization
- Profile management
- Custom daily limits for cigarettes and vapes
- Brand catalog with pricing
- Multi-currency support
- Personal health goals
System Architecture
┌─────────────────────────────────────────────────────────────────┐
│ BreatheFree │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ React │───▶│ Elysia │───▶│ PostgreSQL │ │
│ │ Vite │ │ Bun │ │ + Prisma │ │
│ │ TanStack │ │ JWT Auth │ └─────────────────┘ │
│ └─────────────┘ └──────┬──────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ ┌─────────────────┐ │
│ │ Redis │ │ Google GenAI │ │
│ │ Cache │ │ AI Coaching │ │
│ └─────────────┘ └─────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
Tech Stack
Frontend
| Technology | Purpose |
|---|---|
| React 19 | UI framework |
| Vite 6 | Fast build tool and dev server |
| TypeScript 5.8 | Type-safe development |
| Tailwind CSS | Utility-first styling |
| React Router 7 | Client-side routing |
| TanStack Query | Data fetching and caching |
| Recharts | Interactive charts and analytics |
| Zod 4 | Schema validation |
| Google GenAI | AI-powered insights |
Backend
| Technology | Purpose |
|---|---|
| Elysia | TypeScript web framework |
| Bun | Fast JavaScript runtime |
| Prisma 5 | ORM and database management |
| PostgreSQL 15 | Primary database |
| Redis 7 | Caching layer |
| JWT + bcryptjs | Authentication & password hashing |
| OpenTelemetry | Observability and tracing |
| Swagger/OpenAPI | API documentation |
Infrastructure
| Technology | Purpose |
|---|---|
| Docker | Containerization |
| Docker Compose | Service orchestration |
Security
- JWT Authentication — Secure token-based auth
- Encrypted Passwords — bcryptjs hashing
- Token Rotation — Refresh token security
- Privacy First — User data remains private and encrypted
Why I Built This
Smoking is a deeply personal habit, and the journey to reduce or quit is different for everyone. I wanted to create something that doesn't lecture or shame—just provides clear data and gentle insights.
The AI coaching feature uses Google GenAI to understand patterns over time, helping users identify their triggers and celebrate their progress without feeling judged.
Sometimes awareness is the first step to change. 🌬️

