Feature
Description
AI Study Coach
Context-aware Gemini AI chatbot โ understands your syllabus, answers questions, explains topics
Topic Resolver
Deep-dive any topic: get explanations, YouTube videos, visual diagrams, all in one click
Photo Solver
Upload a photo of any question โ AI solves it instantly (Gemini Vision)
AI Quiz Generator
Auto-generates MCQ quizzes based on your uploaded syllabus PDF
AI Planner
Generates a smart daily study plan based on your tasks and goals
VERSE AI Assistant
Voice-enabled AI assistant โ talk to it, navigate the app hands-free
๐ Study & Productivity
Feature
Description
Dashboard
Real-time study stats, XP, level, streak, daily productivity meter, temporal task grid
Task Manager (Todos)
Smart to-do list with priorities, categories, due dates, undo stack, and AI batch generation
Pomodoro Timer (Focus Mode)
Focus sessions with break scheduling, session logging, daily goals, and XP rewards
Syllabus Tracker
Upload PDF syllabi, track topic proficiency, AI generates tasks from course content
Progress Tracker
Detailed study analytics โ XP history, time studied, quiz accuracy, streak graphs
Habit Tracker
Daily habits with streaks and completion stats
Calendar & Events
Schedule events, set reminders, get deadline warnings
Feature
Description
XP & Level System
Earn XP from tasks, quizzes, focus sessions, streaks โ level up continuously
Rank System
Bronze โ Silver โ Gold โ Platinum โ Diamond โ Heroic โ Master โ Grandmaster
Badges
Achievement badges for milestones, streaks, quiz scores, and more
Daily Streaks
Study every day to maintain and grow your streak
Leaderboard
Compete with all StudyVerse users globally on XP ranking
Item Shop
Spend coins on power-ups, profile frames, themes, and cosmetics
Byte Battle
Real-time competitive 1v1 quiz battles against other users
๐ฅ Social & Collaboration
Feature
Description
Group Study Rooms
Create/join study groups with invite codes, real-time chat via Socket.IO
File Sharing in Groups
Share images, PDFs, ZIP files, code files (HTML/JS/Python/etc.) in group chat
Pinned Messages
Admins can pin important announcements in group chat
Friends System
Send/accept friend requests, view friend profiles and stats
Live Streams
Watch and host live study streams within the platform
Video Calls
Built-in call feature for real-time study sessions
Invite & Earn
Referral system โ invite friends and earn rewards
๐ Authentication & Security
Feature
Description
Email Sign Up / Sign In
Secure registration with OTP email verification via SendGrid
Google OAuth 2.0
One-click sign in with Google
Session Management
Flask-Login with secure cookie sessions
Password Hashing
Werkzeug bcrypt-based password security
Ban / Appeal System
Admin can ban users; users can submit ban appeals
Feature
Description
User Management
View all users, adjust XP, ban/unban, delete accounts, send alerts
Support Center
Full ticket system โ users submit issues, admins reply and close tickets
Analytics Dashboard
Platform-wide stats โ signups, active users, session counts, quiz plays
Gamification Control
Manage XP events, badge criteria, shop items
Battle Monitor
View all active and past Byte Battles
Feedback Dashboard
View all user feedback submissions with emoji ratings and categories
Action Logs
Full audit trail of all admin actions
Feature
Description
Dark Mode UI
Premium dark theme with glassmorphism cards and gradient accents
Zen Mode
Distraction-free study mode โ hides sidebar, clears clutter
PWA Support
Installable as a Progressive Web App โ works offline
Feedback Widget
In-app feedback modal from sidebar โ emoji rating + categories
Responsive Design
Works on desktop, tablet, and mobile
Settings & Profile
Custom display name, profile image, cover image, bio, public profile page
StudyVerse/
โโโ app.py # 9400+ line Flask app (routes, models, services, sockets)
โโโ templates/ # Jinja2 HTML templates
โ โโโ layout.html # Base layout โ sidebar, modals, global JS
โ โโโ dashboard.html # Main dashboard
โ โโโ group_chat.html # Real-time group study rooms
โ โโโ battle.html # Byte Battle quiz arena
โ โโโ topic_resolver.html # AI topic deep-dive
โ โโโ photo_solver.html # AI image question solver
โ โโโ live.html # Live streams
โ โโโ ... # 20+ more templates
โโโ static/
โ โโโ css/style.css # Main stylesheet
โ โโโ js/ # Feature-specific JS modules
โ โโโ uploads/ # User uploaded files (dev only)
โโโ requirements.txt # Python dependencies
โโโ render.yaml # Render.com deployment config
โโโ Procfile # Gunicorn production server config
โโโ gunicorn.conf.py # Gunicorn settings
Layer
Technology
Backend
Python 3.11, Flask 3.0, Flask-SocketIO 5.5, Eventlet
AI
Google Gemini 2.5 Flash (text + vision), YouTube Data API v3
Database
PostgreSQL via Neon (production), SQLite (development)
ORM
Flask-SQLAlchemy 3.1
Auth
Flask-Login, Authlib (OAuth 2.0), SendGrid (OTP email)
Real-time
Socket.IO, Eventlet (WebSocket)
Frontend
Vanilla HTML5, CSS3, JavaScript ES6+, Socket.IO Client
Deployment
Render.com, Gunicorn, WhiteNoise (static files)
git clone https://github.com/Manin1311/StudyVerse_Final.git
cd StudyVerse_Final
2. Create virtual environment
python -m venv venv
venv\S cripts\a ctivate # Windows
# source venv/bin/activate # Mac/Linux
pip install -r requirements.txt
4. Configure environment variables
Create a .env file in the root directory:
# Required
SECRET_KEY = your-secret-key-here
DATABASE_URL = your-postgresql-url
# AI (Google Gemini)
AI_API_KEY = your-gemini-api-key
AI_API_TYPE = google
AI_MODEL = models/gemini-2.5-flash
# Email OTP (SendGrid)
SENDGRID_API_KEY = your-sendgrid-key
SENDGRID_SENDER_EMAIL = your@email.com
SENDGRID_SENDER_NAME = StudyVerse
# Google OAuth (optional)
GOOGLE_CLIENT_ID = your-google-client-id
GOOGLE_CLIENT_SECRET = your-google-client-secret
# YouTube API (for Topic Resolver videos)
YOUTUBE_API_KEY = your-youtube-api-key
Open โ http://localhost:5000
๐ Deployment (Render.com)
This project is production-ready for Render.com:
Fork this repo
Create a new Web Service on Render
Connect your GitHub repo
Set all environment variables in Render dashboard
Render auto-detects render.yaml / Procfile โ deploy!
The app uses Gunicorn + Eventlet as the production server and WhiteNoise for static file serving.
๐ Data Structures & Algorithms Used
Stack (LIFO) โ Undo functionality for todo deletions
LRU Cache โ Optimizes repeated DB queries
Hash Maps โ O(1) lookups for user sessions, quiz scoring
Sorting โ Leaderboard ranking, quiz question shuffle
Graph โ Syllabus topic proficiency visualization
This project is for educational purposes.
Built with โค๏ธ by the StudyVerse Team.
โญ Star this repo if you find it useful!