A comprehensive sprint triathlon training application designed to help athletes prepare mentally and physically for race day.
View here: https://my-triathlon.vercel.app/athlete
- Race countdown: Live countdown to your target race date
- Weekly calendar: Track your training schedule across all three disciplines
- Discipline tracking: Monitor progress in swimming, biking, and running
- Daily entries: Log your training sessions with mood tracking
- Multi-discipline support: Tag entries by swim, bike, or run
- Confidence tracking: Monitor your confidence levels over time for each discipline
- Visualization exercises: Structured mental preparation for race day
- Motivational quotes: Curated collection of inspiring quotes
- Mental notes: Track your mental preparation and mindset
- Framework: Next.js 16 with App Router
- Database: PostgreSQL with Drizzle ORM
- Styling: TailwindCSS with shadcn/ui components
- Icons: Lucide React
- Fonts: Geist Sans, Geist Mono, and Oswald
- Install dependencies:
pnpm install- Set up your environment variables in
.env.local:
DATABASE_URL=your_postgres_connection_string
- Run database migrations:
pnpm drizzle-kit push- Start the development server:
pnpm dev- Open http://localhost:3000 to view the app
The application uses four main tables:
journal_entries: Training journal with mood and discipline trackingconfidence_entries: Daily confidence ratings per disciplinevisualization_notes: Mental preparation notesmotivational_items: Inspirational quotes and sources