AI-powered study companion that transforms lecture notes into structured study materials for IT students.
StudyBridge is a Progressive Web App (PWA) designed for IT students to efficiently organize their courses, capture lecture notes, and generate AI-powered study materials. The app works offline-first with online AI processing capabilities.
- Course Management - Organize courses with schedules, venues, and instructors
- Note Taking - Capture raw lecture notes with session titles
- AI Processing - Generate glossaries, summaries, and memory links using Google Gemini
- Study Bank - Browse and review AI-generated study materials by course
- PWA Support - Install on mobile devices for offline access
- Dark/Light Mode - Automatic theme based on system preferences
studybridge/
├── src/ # React frontend (Vite)
│ ├── pages/ # Page components
│ │ ├── dashboard/ # Main dashboard with course overview
│ │ ├── sessions/ # Note-taking interface
│ │ ├── studybank/ # AI-generated study materials
│ │ ├── settings/ # Course & app settings
│ │ └── onboarding/ # First-time user welcome
│ ├── services/ # Business logic
│ │ ├── aiService.js # Backend API communication
│ │ └── storageService.js # localStorage CRUD
│ └── utils/ # Configuration & helpers
│
└── server/ # Node.js backend (Express)
├── routes/
│ └── aiRoutes.js # Google Gemini API integration
└── server.js # Express server setup
- Node.js 22+ installed
- Google Gemini API key (Get one here)
git clone https://github.com/Handson-A/studybridge.git
cd studybridgecd server
npm installCreate .env file in /server:
GEMINI_API_KEY=your-gemini-api-key-here
PORT=3001
NODE_ENV=development
FRONTEND_URL=http://localhost:5173Start the server:
npm run devIn a new terminal, from project root:
npm install
npm run devNavigate to http://localhost:5173 in your browser.
- Onboarding - You'll see a welcome screen explaining features
- Add Course - Go to Settings and add your first course (e.g., "Digital Forensics 101")
- Set Schedule - Add class times, venue, and instructor details
- From Dashboard, click + Add Notes on a course card
- Create a new session with a title (e.g., "Week 1 - Introduction")
- Write or paste your lecture notes
- Click Process with AI (requires internet connection)
- Click Study Bank from Dashboard
- Select a course to view its study materials
- Browse Glossary, Summary, and Memory Link tabs
- Use Print PDF or Copy JSON buttons to export
- Frontend: Uses browser
localStorage- all data stays on your device - Backend: Stateless - does not store any user data
- Privacy: Your notes never leave your device except for AI processing requests
- React 18 - UI framework
- Vite - Build tool & dev server
- CSS Modules - Component-scoped styling
- PWA - Service worker for offline support
- Express 4 - Web framework
- Google Generative AI SDK - Gemini integration
- CORS - Cross-origin requests
- dotenv - Environment variables
Frontend:
npm run dev # Start dev server
npm run build # Production build
npm run preview # Preview production buildBackend:
npm start # Start server
npm run dev # Start with auto-reload (--watch)VITE_API_URL=http://localhost:3001GEMINI_API_KEY=your-api-key-here
PORT=3001
NODE_ENV=development
FRONTEND_URL=http://localhost:5173- Backend exits with code 1 occasionally (non-critical, AI processing works)
- Gemini API requires active internet connection
- Free tier Gemini API has rate limits (15 requests/minute)
- localStorage has ~5-10MB limit depending on browser
- Cloud sync for multi-device access
- User authentication
- Share study materials with classmates
- Export to PDF/Markdown
- Spaced repetition reminders
- Edit and regenerate AI content
- Batch process multiple sessions
- Service worker for offline Study Bank viewing
This is a personal project for IT students. Feel free to fork and customize for your needs.
none
For issues or questions:
- GitHub Issues: Create an issue
- Email: Contact via GitHub profile
- Google Gemini API for AI processing
- React & Vite communities
- Icon designs from system emojis
Built with AI for IT students