Sesh Log is a modern, privacy-focused tracker for life routines (sleep, mood, hydration, physical activity) and legacy substance sessions (weed, cigarettes, vapes, liquor). The app is now lean by design with a simplified UI/UX.
- Legacy: Weed, Cigarettes, Vapes, Liquor.
- Life: Sleep, Mood, Hydration, Physical Activity.
- Quick stats and insights for the features above.
- Add notes, ratings, and participant count to each session.
- Edit or delete any session with a user-friendly interface.
- All quantities are unit-aware and normalized for accurate stats.
- Supabase Auth: Secure email/password authentication.
- Data Isolation: Each user can only access their own data.
- Session Persistence: Stay logged in across browser sessions.
- RLS Policies: Database row-level security ensures privacy.
- Responsive Design: Works beautifully on mobile and desktop.
- Dark/Light/System Theme: Toggle between themes instantly.
- Accessible: Built with accessibility in mind.
- Shadcn-UI & Tailwind CSS: Clean, modern, and customizable.
- Landing Page: Welcome screen with app branding and a "Get Started" button.
- Authentication: Sign up or log in with email/password. (Email verification supported.)
- Category Selection: Choose what you want to track: Weed, Cigarettes, Vapes, or Liquor.
- Dashboard: For each category, log new sessions, view stats, and explore insights.
- Session Management: Edit, delete, and filter your sessions. All changes are instantly reflected in your analytics.
- Analytics: Visualize your habits with charts, key metrics, and period-based insights.
- Vite (build tool)
- TypeScript
- React
- shadcn-ui (component library)
- Tailwind CSS
- Supabase (authentication & database)
- React Query (data fetching/caching)
- date-fns (date utilities)
- Recharts (data visualization)
- Clone the repository:
git clone <YOUR_GIT_URL> cd session-scribe-log
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Open in your browser: Visit http://localhost:5173 (or as shown in your terminal)
- Deploy on Vercel, Netlify, or your preferred platform.
- Configure your Supabase credentials in the environment as needed.
- Supabase is used for authentication and as a Postgres database.
- Row Level Security (RLS) is enabled for all tables.
- All CRUD operations are authenticated and scoped to the current user.
- See
/supabase/migrations/for schema and policy details.
Pull requests and issues are welcome! Please open an issue to discuss your ideas or report bugs.
Note: This project is actively maintained and regularly updated with new features and improvements.
MIT
src/app/providers/AppProviders.tsx: Central providers (React Query, Theme, Auth, Tooltips, Toasters)src/app/layouts/RootLayout.tsx: App shell withTopNavbar,BottomNavbar, andOutletsrc/app/router.tsx: Router with lazy-loaded routes andProtectedRoutesrc/features/daily/*/components/*Form.tsx: Daily tracker forms (sleep, mood, hydration, activity)src/pages/*: Pages remain; imports updated to use feature forms
Notes:
- Font import moved to
src/main.tsx(@fontsource/inter) to avoid CSS import ordering issues index.cssreorganized; Tailwind layers are loaded after the font import via TS entryTopNavbarandBottomNavbarprovide a consistent shell; bottom nav shows on mobile only
- Unified spacing, shadows, and rounded radii across pages
- Fixed dynamic Tailwind class in
AppDashboardto avoid invalid class generation - Improved bottom nav active state with a subtle indicator dot
- Leaned the app: removed Nutrition, Work Focus, Pain, and Supplements features and routes