Welcome to EduVerse, a revolutionary learning platform that transforms education through artificial intelligence and adaptive learning technologies. This README will guide you through everything you need to know about the project.
EduVerse is an innovative educational platform designed to provide personalized, adaptive learning experiences for students, teachers, and working professionals. Using cutting-edge AI technologies, EduVerse creates customized learning paths that adapt to each user's unique learning style, pace, and preferences.
- Adaptive Knowledge Map: A dynamic, visual representation of skills and concepts that adapts as you learn
- AI Mentor Avatar: Your personal AI tutor with a distinct personality that guides your learning journey
- Emotion & Focus-Adaptive Learning: Real-time adjustment of content based on your engagement and focus levels
- Micro-Learning Bursts: Bite-sized, highly engaging learning sessions optimized for retention
- Real-World Context Generator: Learning scenarios connected to practical, real-world applications
- Peer Learning: Collaborative learning experiences with fellow students
- Teacher Dashboard 2.0: Advanced analytics and AI-powered insights for educators
- Gamified Learning Economy: Points, badges, and rewards system to motivate learning
- Node.js (version 14 or higher)
- npm or yarn package manager
- A modern web browser
-
Clone the repository:
git clone <repository-url>
-
Navigate to the project directory:
cd eduverse-clean -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser and visit
http://localhost:5173
To enable full functionality, you need to configure environment variables:
-
Copy the .env.example file to .env:
cp .env.example .env
-
Update the .env file with your actual API keys:
# Firebase Configuration (optional for full auth functionality) VITE_FIREBASE_API_KEY=your_actual_api_key VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com VITE_FIREBASE_PROJECT_ID=your_project_id VITE_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id VITE_FIREBASE_APP_ID=your_app_id # Gemini API Configuration (required for "Learn Anything" feature) VITE_GEMINI_API_KEY=your_actual_gemini_api_key
To enable full authentication functionality:
- Create a Firebase project at https://console.firebase.google.com/
- Enable Email/Password authentication in Firebase Authentication settings
- Update the .env file with your Firebase project credentials:
VITE_FIREBASE_API_KEY=your_actual_api_key VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com VITE_FIREBASE_PROJECT_ID=your_project_id VITE_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id VITE_FIREBASE_APP_ID=your_app_id
To enable the "Learn Anything" feature with real AI explanations:
- Get a Gemini API key from Google AI Studio
- Update the .env file with your Gemini API key:
VITE_GEMINI_API_KEY=your_actual_gemini_api_key
When you first visit EduVerse, you'll be asked to select your role:
- Student: For learners seeking to acquire new skills
- Teacher: For educators creating content and tracking student progress
- Working Professional: For career advancement and upskilling
After selecting your role, you can either sign in with an existing account or create a new one.
Upon logging in, you'll land on your personalized dashboard which displays:
- Your current learning progress
- Points and level achievements
- Quick access to learning activities
- Recent achievements and badges
The student dashboard includes 6 key cards/containers:
- Learn Anything: AI-powered concept explanations with 3 difficulty levels (beginner, intermediate, advanced) and related learning sources
- Learn Through Videos: Educational video content tailored to your learning path
- Learn Through Reels: Quick learning snippets in engaging short videos
- AI Friend Chatbot: Personal AI learning companion ready to help with any questions
- Group Chat: Collaborate and learn with your fellow students
- Smart Quiz Generator: AI-powered quizzes from any topic or PDF content
Each card links to a dedicated page with specialized functionality for that learning activity.
Navigate to the Knowledge Map to visualize your learning journey. The map shows:
- Skills you've mastered (completed)
- Skills available for learning (unlocked)
- Skills yet to be unlocked (locked)
- Progress percentages for each skill area
The AI Tutor provides personalized assistance through:
- Interactive chat conversations
- Adaptive questioning based on your knowledge level
- Real-time feedback and explanations
- Suggested learning paths
The Progress section offers detailed insights into:
- Your learning history
- Skill mastery levels
- Time spent on different subjects
- Achievement milestones
Educators have access to advanced features:
- Student progress analytics
- AI-powered learning insights
- Content creation tools
- Class management capabilities
- React 18 with TypeScript for robust component development
- Vite for fast development and building
- Custom CSS for styling (no external CSS frameworks)
- React Router for navigation
- Context API for state management
- Firebase Authentication for secure user management
- Email/password authentication flow
- Session persistence across browser sessions
- Role-based access control (Student/Teacher/Professional)
- Gemini API for the "Learn Anything" feature
- Natural language explanations of any concept
- Three difficulty levels (beginner, intermediate, advanced)
- Related learning resources and sources
-
User Authentication System
- User type selection (Student/Teacher/Professional)
- Secure login/signup with form validation
- Session management and logout functionality
-
Learning Context Management
- Skill tree representation
- Learning progress tracking
- Adaptive content delivery
-
User Context Management
- User profile and preferences
- Points and badge system
- Role-specific features
-
UI Components
- Responsive navigation bar
- Interactive dashboard
- Knowledge map visualization
- AI tutor interface
src/
βββ components/ # Reusable UI components
βββ contexts/ # React context providers
βββ pages/ # Page components
β βββ student/ # Student-specific pages
β β βββ cards/ # Student dashboard card pages
β β βββ ... # Other student pages
β βββ teacher/ # Teacher-specific pages
β βββ professional/ # Professional-specific pages
βββ services/ # External service integrations
βββ utils/ # Utility functions
βββ simple.css # Custom styling
βββ App.tsx # Main application component
EduVerse follows a user-centered design approach with:
- Clean, modern interface with gradient backgrounds
- Consistent color scheme using indigo and purple accents
- Ample whitespace for readability
- Responsive layout for all device sizes
- Intuitive navigation with clear visual hierarchy
- Immediate feedback for user actions
- Smooth animations and transitions
- Accessible design principles
- User Type Selection: Clear role identification
- Login/Signup: Streamlined forms with validation
- Protected Routes: Secure access to application features
- Session Management: Persistent login state
npm run dev: Start the development servernpm run build: Create a production buildnpm run preview: Preview the production build locally
- TypeScript for type safety
- ESLint for code linting
- Prettier for code formatting
- Component-based architecture
EduVerse uses a custom CSS approach without external frameworks:
- Consistent design system
- Reusable CSS classes
- Responsive design patterns
- Component-specific styling
We welcome contributions to EduVerse! Here's how you can help:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a pull request
- Additional AI features
- More learning content
- Enhanced analytics
- Mobile app development
- Accessibility improvements
Planned features and improvements:
-
Advanced AI Integration
- Natural language processing for more conversational AI
- Machine learning for better content recommendations
- Voice interaction capabilities
-
Expanded Content Library
- More subjects and skill areas
- Interactive simulations
- Video content integration
-
Social Learning Features
- Study groups and collaboration tools
- Leaderboards and competitions
- Mentor matching system
-
Analytics and Insights
- Deeper learning analytics
- Predictive performance modeling
- Personalized study recommendations
For questions, issues, or feedback, please:
- Check the existing issues in the repository
- Create a new issue if your problem isn't addressed
- Contact the development team through the repository
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to all contributors who have helped build EduVerse
- Inspired by the need for more personalized and adaptive learning experiences
- Built with modern web technologies for optimal performance
EduVerse - Transforming Education Through AI and Adaptive Learning