Skip to content

Transform your notes into smart flashcards, adaptive quizzes, and personalized study plans. Study smarter, not harder, with proven AI technology.

Notifications You must be signed in to change notification settings

Premshaw23/brainwave

Repository files navigation

BrainWave Logo

🧠 BrainWave

AI-Powered Learning Platform

Transform your notes into smart flashcards, adaptive quizzes, and personalized study plans. Study smarter, not harder, with proven AI technology.


🌟 Features

  • AI Quiz & Flashcard Generation: Upload notes or PDFs and instantly generate personalized quizzes and flashcards.
  • Real-time Collaboration: Join study groups, chat live, and share resources.
  • Progress Analytics: Track mastery, streaks, and learning velocity with beautiful charts.
  • Community Sharing: Discover and share study materials with others.
  • Gamification: Earn XP, climb leaderboards, and maintain daily streaks.
  • Secure Authentication: Login with email or Google via Firebase.

🖥️ Tech Stack

Frontend Backend Database Real-time AI Auth Deployment
Next.js 14 Next.js API MongoDB Atlas Socket.io Gemini API Firebase Vercel + Render
React 18 Express.js
TypeScript
TailwindCSS

📦 Quick Start

git clone https://github.com/Premshaw23/brainwave
cd brainwave
npm install
cp .env.example .env.local
# Add your environment variables
npm run dev:all

📝 Usage

  1. Register or login to your account
  2. Upload notes or PDFs to generate quizzes/flashcards
  3. Join study groups and collaborate in real-time
  4. Track your progress and streaks on the dashboard
  5. Share and discover materials in the community

📁 Folder Structure

brainwave/
├── app/           # Next.js app router & API routes
├── components/    # UI and feature components
├── lib/           # Utility libraries (firebase, gemini, etc.)
├── models/        # Mongoose schemas
├── server/        # Socket.io server
├── types/         # TypeScript types
├── public/        # Static assets
├── ...            # Configs, env, etc.

🔑 Environment Variables

See .env.example for all required variables:

# MongoDB
MONGODB_URI=
# Firebase
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
FIREBASE_ADMIN_PROJECT_ID=
FIREBASE_ADMIN_CLIENT_EMAIL=
FIREBASE_ADMIN_PRIVATE_KEY=
# Gemini
GEMINI_API_KEY=
# Socket.io
NEXT_PUBLIC_SOCKET_URL=http://localhost:3001
SOCKET_PORT=3001
# Security
JWT_SECRET=
NEXT_PUBLIC_APP_URL=http://localhost:3000

📸 Screenshots & Demo

🏠 Home Page

Home Page

📊 Dashboard

Dashboard

🗂️ Flashcards

Flashcards

📈 Analytics

Analytics

👥 Study Group

Study Group

🌐 Live Demo

https://brainwave-two-iota.vercel.app/


🎯 Roadmap & Future Enhancements

  • Video study sessions
  • AI tutoring chat
  • Mobile app (React Native)
  • Advanced analytics with ML predictions
  • Collaborative note-taking

🤝 Contributing

Contributions, issues, and feature requests are welcome!
Please read the contributing guidelines first.


📄 License

MIT


👤 Author

Prem Shaw


✅ Deployment Checklist

Pre-Launch

  • All features tested locally
  • No console.errors in production
  • All environment variables set
  • MongoDB indexes created
  • Firebase rules configured
  • Socket.io CORS updated
  • Images optimized
  • Bundle size checked
  • Mobile responsive tested
  • Loading states work
  • Error handling works

Vercel Deployment

  • Repository pushed to GitHub
  • Vercel project created
  • Environment variables added
  • Build successful
  • Site accessible
  • No 404 errors
  • API routes working
  • Authentication working

Render Deployment

  • Socket server deployed
  • Environment variables set
  • Health endpoint accessible
  • CORS configured
  • WebSocket connection works
  • Messages sent successfully

Post-Launch

  • Test complete user flow
  • Multi-user testing
  • Mobile browser testing
  • Performance check (Lighthouse)
  • SEO basics done
  • Analytics set up (optional)
  • Domain configured (optional)

About

Transform your notes into smart flashcards, adaptive quizzes, and personalized study plans. Study smarter, not harder, with proven AI technology.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published