A fun, interactive, and responsive React frontend for an AI-powered science tutor designed specifically for Grade 5 students (ages 10-11). Built with modern web technologies and following UX best practices for young learners.
- Interactive Lessons: Engaging science lessons with tap-to-reveal mechanics
- Smart Quizzes: Adaptive quizzes with instant feedback and explanations
- AI Chat: Natural conversation with Nova the Owl for science questions
- Achievement System: Gamified learning with badges and progress tracking
- Nova the Owl: Friendly AI mascot with animations and personality
- Bright Colors: Playful gradient backgrounds and vibrant UI elements
- Large Touch Targets: Optimized for young fingers on tablets and phones
- Immediate Feedback: Visual and audio confirmation for all actions
- Error-Tolerant Design: Forgiving interface that encourages exploration
- Mobile-First: Optimized for tablets and smartphones
- Touch-Friendly: Large buttons and intuitive gestures
- Smooth Animations: Framer Motion animations that delight and guide
- Accessible: High contrast and readable fonts
- React 18 with TypeScript for type safety
- Redux Toolkit for state management
- Tailwind CSS for styling and responsive design
- Framer Motion for smooth animations and transitions
- Modern Build Tools with Create React App
- Node.js 16+ and npm/yarn
- Modern web browser
-
Clone and setup:
git clone <your-repo> cd scifly npm install
-
Start development server:
npm start
-
Open your browser: Navigate to
http://localhost:3000
npm start
- Start development servernpm build
- Build for productionnpm test
- Run testsnpm run eject
- Eject from Create React App
src/
โโโ components/ # Reusable UI components
โ โโโ AvatarIcon.tsx
โ โโโ NovaMascot.tsx
โ โโโ PrimaryButton.tsx
โ โโโ QuizCard.tsx
โ โโโ AchievementBadge.tsx
โ โโโ ProgressBar.tsx
โโโ features/ # Redux slices
โ โโโ progress/
โ โโโ quiz/
โ โโโ chat/
โ โโโ achievements/
โโโ pages/ # Main application screens
โ โโโ HomeScreen.tsx
โ โโโ LessonScreen.tsx
โ โโโ QuizScreen.tsx
โ โโโ ChatScreen.tsx
โ โโโ AchievementsScreen.tsx
โโโ App.tsx # Main app component
โโโ store.ts # Redux store configuration
โโโ index.tsx # App entry point
- Start Learning: Tap "Learn About Gravity" to begin your first lesson
- Interactive Discovery: Tap elements to reveal science facts
- Test Knowledge: Take quizzes to check your understanding
- Ask Questions: Chat with Nova about anything science-related
- Earn Achievements: Complete lessons and unlock cool badges
- Monitor progress through the achievement system
- Review lesson completion and quiz scores
- Encourage daily learning streaks
- Use the chat feature to spark science curiosity
- Visual Hierarchy: One primary action per screen
- Immediate Feedback: Every interaction provides clear response
- Progressive Disclosure: Information revealed step-by-step
- Mistake-Friendly: Errors treated as learning opportunities
- Mascot Guidance: Nova provides context-aware tips and encouragement
- Gamification: Points, streaks, and badges motivate learning
- Personalization: Progress tracking and adaptive content
- Social Features: Safe sharing of achievements
- Update
lessonContent
inLessonScreen.tsx
- Add corresponding quiz questions in
quizSlice.ts
- Create achievement triggers in lesson completion logic
- Edit Tailwind classes in components
- Modify color scheme in
tailwind.config.js
- Adjust animations in Framer Motion components
- Replace mock responses in
chatSlice.ts
with real AI API calls - Add environment variables for API configuration
- Implement proper error handling for network requests
- Gravity: Understanding forces and their effects
- Solar System: Planets, moon phases, and space
- Water Cycle: Evaporation, condensation, precipitation
- Plant Growth: Photosynthesis and life cycles
- Digital Literacy: Comfortable with technology interfaces
- Critical Thinking: Questioning and hypothesis formation
- Communication: Expressing ideas through chat interactions
- Self-Directed Learning: Progress tracking and goal setting
- More science topics (biology, chemistry, physics)
- Virtual lab experiments with simulations
- Peer collaboration features (safe classroom mode)
- Parent/teacher dashboard for progress monitoring
- Voice recognition for chat interactions
- Offline mode for lesson content
- Multi-language support
- Advanced accessibility features
- Personalized learning paths
- Adaptive difficulty based on performance
- Natural language question generation
- Real-time concept understanding assessment
We welcome contributions! Please read our contributing guidelines and submit pull requests for any improvements.
This project is licensed under the MIT License - see the LICENSE file for details.
- Designed with insights from elementary education experts
- Icons and animations inspired by child-friendly design patterns
- Built with accessibility guidelines from W3C WCAG
- Tested with real Grade 5 students and teachers
Made with โค๏ธ for curious young scientists! ๐ฌ๐