NeuraBlend is an AI-powered learning platform designed to create personalized study plans for students. The application leverages artificial intelligence to generate customized learning paths tailored to individual learning styles and goals.
- AI-Generated Study Plans: Create personalized study plans based on grade level, subject, and learning goals
- Step-by-Step Learning: Break down complex topics into manageable steps with guided resources
- Interactive Quizzes: Test knowledge with AI-generated quizzes at each learning step
- Progress Tracking: Monitor learning progress and achievements in the dashboard
- Badge Collection: Earn and purchase badges to showcase achievements
- Gamified Learning: Earn XP and Kudos for answering quiz questions correctly
- React: JavaScript library for building the user interface
- React Router: For navigation and routing between different pages
- Tailwind CSS: Utility-first CSS framework for styling
- Framer Motion: For animations and transitions
- Tailwind Components: Custom components built with Tailwind classes
- FastAPI: High-performance Python web framework for building the API
- SQLAlchemy: SQL toolkit and ORM for database interactions
- SQLite: Lightweight database for storing user data, study plans, and badges
- OpenAI GPT: For generating personalized study plans, quizzes, and learning resources
- React Markdown: For rendering markdown content from study plans
- Remark GFM: GitHub Flavored Markdown plugin for React Markdown
- Framer Motion: Animation library for React
- Papa Parse: CSV parsing library
- React Icons: Icon library for React
neura-blend/
├── frontend/ # React frontend application
│ ├── public/ # Public assets
│ │ └── assets/ # Images, logos, and other static files
│ └── src/
│ ├── components/ # Reusable UI components
│ ├── pages/ # Page components
│ └── ui/ # UI utility components
│
├── backend/ # FastAPI backend application
│ ├── api.py # API endpoints
│ ├── database.py # Database connection and session management
│ ├── models.py # SQLAlchemy models
│ ├── openai_utils.py # OpenAI integration utilities
│ └── init_badges.py # Script to initialize badge data
- User Registration/Login: Users create an account or log in with their username and email
- Dashboard: Users can view their learning progress, XP, and Kudos
- Create Study Plan: Users specify their grade level, subject, and learning goal to generate a personalized study plan
- Study Plan Execution: Users work through the generated study plan step by step
- Knowledge Testing: Each step includes a quiz to test understanding and earn XP/Kudos
- Badge Collection: Users can spend Kudos to purchase achievement badges in the shop
- Modern UI: Clean, responsive interface designed with Tailwind CSS
- Personalization: AI-generated content tailored to individual learning needs
- Gamification: Points, badges, and achievements to motivate continued learning
- Resource Integration: Each learning step includes relevant resources or AI-generated materials
- Node.js and npm
- Python 3.8+
- OpenAI API key
- Clone the repository
- Navigate to the frontend directory
- Install dependencies:
npm install - Start the development server:
npm run dev
- Navigate to the backend directory
- Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate - Install dependencies:
pip install -r requirements.txt - Set up environment variables:
echo "OPENAI_API_KEY=your_openai_api_key" > .env - Initialize the database and badges:
python init_badges.py - Start the FastAPI server:
uvicorn main:app --reload
- Collaborative Learning: Features for group study and peer-to-peer learning
- Advanced Analytics: Detailed insights into learning patterns and progress
- Content Expansion: More subjects, grade levels, and specialized learning tracks
- Mobile App: Native mobile application for on-the-go learning
- AI Tutoring: Real-time AI tutoring sessions with personalized feedback
- More Game Mechanics: Maybe add a prize ticket machine where the student can use Kudos to purchase prize ticket to get rare badges that they can't buy in the shop.
- Stan Chen - Full Stack Developer & Product Manager
- Sean Donovan - UI/UX Developer
MIT License

