Hey HN! I built this for myself and wanted to share the process.
The Problem: I'm training for my first half-marathon in Ireland. Irish weather is unpredictable - sunny mornings turn into horizontal rain by afternoon. I kept making reactive decisions: skip today's long run because of rain, then realize tomorrow was perfect but I'd already mentally rescheduled. My training consistency was suffering.
The Solution: RainCheck pulls 7-day weather forecasts and knows my 27-week training plan. It suggests the best days to run based on weather conditions, run type (long runs need better weather than easy recovery runs), and training consistency (no 4+ day gaps). Each day gets a 0-100 score with reasoning.
What I Built:
- 7-day weather forecasts with intelligent run suggestions
- Drag-and-drop training calendar (tap-to-move on mobile)
- Weather-reactive UI (background changes with conditions)
- Live weather effects (rain, snow, fog animations)
- Progress tracking and stats dashboard
- Public read-only access (doubles as a portfolio piece)
Tech Stack: Next.js 16, React 19, tRPC, Prisma + PostgreSQL, Tailwind CSS v4, Open-Meteo API for weather.
The Build Process: I built this in about 5 days using Claude Code with a workflow I've been developing called Session-Driven Development (I posted about the framework here previously: https://news.ycombinator.com/item?id=45899952 if anyone's curious).
The short version: every session started with Claude getting a full briefing (current work item, previous commits, learnings). Every session ended with automated quality gates (tests, linting, type-checking). This let me move fast without cutting corners.
43 work items completed. 39 development sessions. 52 pull requests merged. Full test coverage.
The app is live and completely public - you can see my actual training data. I'm using it to train for a May 2026 race, goal sub-2 hours.
pless•47m ago
The Problem: I'm training for my first half-marathon in Ireland. Irish weather is unpredictable - sunny mornings turn into horizontal rain by afternoon. I kept making reactive decisions: skip today's long run because of rain, then realize tomorrow was perfect but I'd already mentally rescheduled. My training consistency was suffering.
The Solution: RainCheck pulls 7-day weather forecasts and knows my 27-week training plan. It suggests the best days to run based on weather conditions, run type (long runs need better weather than easy recovery runs), and training consistency (no 4+ day gaps). Each day gets a 0-100 score with reasoning.
What I Built:
- 7-day weather forecasts with intelligent run suggestions
- Drag-and-drop training calendar (tap-to-move on mobile)
- Weather-reactive UI (background changes with conditions)
- Live weather effects (rain, snow, fog animations)
- Progress tracking and stats dashboard
- Public read-only access (doubles as a portfolio piece)
Tech Stack: Next.js 16, React 19, tRPC, Prisma + PostgreSQL, Tailwind CSS v4, Open-Meteo API for weather.
The Build Process: I built this in about 5 days using Claude Code with a workflow I've been developing called Session-Driven Development (I posted about the framework here previously: https://news.ycombinator.com/item?id=45899952 if anyone's curious).
The short version: every session started with Claude getting a full briefing (current work item, previous commits, learnings). Every session ended with automated quality gates (tests, linting, type-checking). This let me move fast without cutting corners.
43 work items completed. 39 development sessions. 52 pull requests merged. Full test coverage.
The app is live and completely public - you can see my actual training data. I'm using it to train for a May 2026 race, goal sub-2 hours.
Try it: https://raincheck.ankushdixit.com
Happy to answer questions about the build process, the planning algorithm, or the weather integration!