A comprehensive running training application built with Next.js, designed to help runners of all levels prepare for their races with personalized training plans and progress tracking.
Prep My Run is a modern, minimalist training application that provides:
Docs → https://documents.zerotoshipped.com
Demo → https://demo.zerotoshipped.com/
ENV generator → https://env.zerotoshipped.com/
- Personalized Training Plans: 16-week marathon training plans based on your goals and preferences
- Workout Tracking: Log completed workouts with distance, duration, pace, and notes
- Progress Monitoring: Track your training progress week by week
- Flexible Scheduling: Customize workout days to fit your schedule
- Multiple Units: Support for both miles and kilometers
- Pace Formats: Choose between min/mile and min/km pace formats
The application supports several feature flags for customizing functionality:
NEXT_PUBLIC_ENABLE_ADVANCED_METRICS(default:false)- Controls advanced workout metrics tracking
- When enabled, allows tracking of effort level, weather, temperature, intensity, and calories
- Currently disabled to maintain a simplified user experience
- Can be re-enabled in the future if advanced tracking is desired
NEXT_PUBLIC_ENABLE_BLOG_PAGE- Enable/disable blog functionalityNEXT_PUBLIC_ENABLE_ABOUT_PAGE- Enable/disable about pageNEXT_PUBLIC_ENABLE_CHAT_PAGE- Enable/disable chat functionalityNEXT_PUBLIC_ENABLE_PRICING_PAGE- Enable/disable pricing page
Comprehensive API documentation is available at:
The application uses environment variables for configuration. Key variables include:
- Authentication settings
- Email provider configuration
- Feature flags
- API keys for external services
For a complete list of environment variables, see the environment schema files in src/env/schemas/.
- Clone the repository
- Install dependencies:
npm install - Set up environment variables (copy
.env.exampleto.env.local) - Run database migrations:
npm run db:migrate - Start the development server:
npm run dev
See CHANGELOG.md for detailed information about recent updates, including the removal of advanced metrics to simplify the user experience.