How vatsalparate/studygroup-backend works
This repository is a Flask study-group API with account authentication, group membership, study-session scheduling, shared note uploads, and real-time group chat. Users enter through HTTP endpoints or a Socket.IO connection; the app handles each domain operation and uses SQLAlchemy-backed SQLite state, with Cloudinary for note files. The sampled code shows authentication and group operations directly, plus session reads and chat persistence. Some route bodies are omitted, so their details and any additional relationships are not inferred.
Main entry points: app.py SQLAlchemy models · study.db SQLite database
Components 10
Identity
- Account and token auth
app.py
Study groups
- Group membership
app.py
Collaboration
- Study sessions
app.py - Note uploads
app.py - Group chat
app.py
Persistence and files
- SQLAlchemy models
app.py - SQLite database
instance/study.db - Cloudinary storage
Other components
- Study group user
- Chat client
Connections 11
- Study group user → Account and token auth: registers or logs in
app.py - Study group user → Group membership: manages membership
app.py - Study group user → Study sessions: schedules or views
app.py - Study group user → Note uploads: uploads notes
app.py - Chat client → Group chat: joins and sends
app.py - Account and token auth → SQLAlchemy models: queries and creates users
app.py - Group membership → SQLAlchemy models: reads and updates groups
app.py - Study sessions → SQLAlchemy models: queries sessions
app.py - Group chat → SQLAlchemy models: persists messages
app.py - Note uploads → Cloudinary storage: uploads files
app.py - SQLAlchemy models → SQLite database: stores model data
app.py