Monzim
React
Vite
TypeScript
Elysia
Bun

BreatheFree: Smoking & Vape Tracker

A supportive personal tracking app for monitoring and reducing cigarette and vape consumption with analytics, goal setting, and AI-powered coaching.

Azraf Al Monzim
BreatheFree: Smoking & Vape Tracker cover

Project Overview

BreatheFree helps users track their smoking habits effortlessly with one-tap logging, consumption analytics, cost tracking, and AI-powered insights via Google GenAI. Built with React 19, Elysia, Bun, PostgreSQL, and Redis. Features shareable photo cards for Instagram and personalized goal setting.

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

TechnologyPurpose
React 19UI framework
Vite 6Fast build tool and dev server
TypeScript 5.8Type-safe development
Tailwind CSSUtility-first styling
React Router 7Client-side routing
TanStack QueryData fetching and caching
RechartsInteractive charts and analytics
Zod 4Schema validation
Google GenAIAI-powered insights

Backend

TechnologyPurpose
ElysiaTypeScript web framework
BunFast JavaScript runtime
Prisma 5ORM and database management
PostgreSQL 15Primary database
Redis 7Caching layer
JWT + bcryptjsAuthentication & password hashing
OpenTelemetryObservability and tracing
Swagger/OpenAPIAPI documentation

Infrastructure

TechnologyPurpose
DockerContainerization
Docker ComposeService 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. 🌬️

Technologies:
React
Vite
TypeScript
Elysia
Bun
Prisma
PostgreSQL
Redis
TanStack Query
Google GenAI
Tailwind CSS
Docker