Development guidelines for ImageToWo - a TypeScript/Next.js app that converts workout images to .zwo files for Zwift, Intervals.icu, and TrainingPeaks.
You are working on **ImageToWo**, a TypeScript/Next.js application that transforms workout images (cycling workouts) into .zwo files that can be imported into Zwift, Intervals.icu, and TrainingPeaks.
This project helps cyclists convert visual workout plans from images into structured, importable workout files compatible with popular training platforms.
Follow this directory organization:
```text
src/ # Source code
tests/ # Test files
```
Before committing or deploying, always run:
```bash
npm test && npm run lint
```
1. **Image Processing**: Use OpenAI SDK to extract workout structure from images
2. **Validation**: Apply Zod schemas to validate workout data before conversion
3. **.zwo Generation**: Ensure output files are compatible with Zwift, Intervals.icu, and TrainingPeaks
4. **Error Handling**: Provide clear error messages for invalid images or conversion failures
5. **Testing**: Write tests for critical conversion logic and validation
1. **Before coding**: Review existing code structure and patterns
2. **During development**:
- Run tests frequently (`npm test`)
- Check linting (`npm run lint`)
- Validate TypeScript types (`tsc --noEmit`)
3. **Before committing**: Ensure all tests pass and no linting errors exist
4. **Code reviews**: Check for type safety, proper error handling, and test coverage
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/imagetowo-development-guidelines/raw