This repository contains the project vibe coded in episodes of the YouTube channel First Line to Last Mile with Kim.
You can follow along the changes made in each episode using the release tags.
A fun and engaging math learning platform designed specifically for elementary school children (Kindergarten through 5th grade). Children can create colorful profiles with emoji avatars and progress through grade-appropriate math challenges!
- �👧 Child-Friendly Profiles: Choose from 20 emoji avatars and create personalized learning profiles
- 📚 Grade-Based Learning: Math problems tailored for K-5 with progressive difficulty
- 🎯 Progress Tracking: 80% accuracy required to advance to the next level
- 🎨 Colorful UI: Engaging design with bright colors, animations, and encouraging feedback
- 📊 Performance Analytics: Track accuracy, attempts, and completion status
- 🏆 Achievement System: Complete levels to unlock new challenges
- Framework: Remix with TypeScript
- Database: SQLite with Prisma ORM
- Styling: Tailwind CSS
- Deployment: Node.js compatible
- Node.js (v20 or higher)
- npm
- Clone the repository:
git clone <your-repo-url>
cd math-app- Install dependencies:
npm install- Set up the database:
npx prisma generate
npx prisma db push
npm run db:seed- Start the development server:
npm run dev- Open http://localhost:5173 in your browser
- Choose Your Character: Select an emoji avatar from the home screen
- Create Profile: Enter your name and select your grade level
- Start Learning: Begin with addition problems appropriate for your grade
- Progress Through Levels: Complete levels with 80% accuracy to advance
- Track Your Journey: View your progress and completed levels on the dashboard
-
Grade-Appropriate Content:
- Kindergarten: Numbers 1-5
- 1st Grade: Numbers 1-10
- 2nd Grade: Numbers 1-20
- 3rd Grade: Numbers 1-50
- 4th Grade: Numbers 1-100
- 5th Grade: Numbers 1-200
-
Problem Types: Currently supports addition and subtraction with plans for multiplication and division
-
Learning Methodology: Immediate feedback, positive reinforcement, and mastery-based progression
- Users: Store child profiles (name, avatar, grade)
- Levels: Grade-specific learning challenges
- Problems: Math questions with multiple choice answers
- UserProgress: Track completion and performance
- UserAttempts: Record individual problem-solving attempts
Run the development server:
npm run devBuild for production:
npm run buildStart production server:
npm startThis project is designed with child safety and educational effectiveness in mind. When contributing:
- Maintain child-friendly language and design
- Ensure grade-appropriate content difficulty
- Test thoroughly with the target age group in mind
- Follow accessibility best practices
This project is licensed under the MIT License.
- Multiplication and division problems
- Timed challenges
- Parent/teacher dashboard
- Achievement badges
- Sound effects and animations
- Adaptive difficulty based on performance
If you're familiar with deploying Node applications, the built-in Remix app server is production-ready.
Make sure to deploy the output of npm run build
build/serverbuild/client
This template comes with Tailwind CSS already configured for a simple default starting experience. You can use whatever css framework you prefer. See the Vite docs on css for more information.