How iamfaisalirshad/bgsbu-interacts-v.1 works
BGSBU:INTERACTS is a Flask platform for students, alumni, and administrators to build professional connections and manage related services. The user workflow begins with registration and email OTP verification, then proceeds through role-aware access to profiles, directory search, and connection requests; connected users can message, while students and alumni also use job and mentorship features. Administration oversees accounts, jobs, mentorship, messaging, and system settings. Edges are limited to relationships supported by the excerpts, SOURCE INDEX references, or README; unsampled implementation details are not inferred.
Main entry points: db.py MySQL access layer · app.py Flask application · protocols.py Feature protocols · auth.py Authentication
Components 21
Application entry
- Flask application
src/app.py - Application configuration
src/config.py - Web interface templates
src/templates
Identity and security
- Authentication
src/routes/auth.py - Profiles
src/routes/profile.py - Password and input utilities
src/utils/auth_utils.py - Request security
src/utils/security.py - Access control
src/utils/decorators.py - OTP email service
src/utils/email_service.py
Community features
- Alumni directory
src/routes/directory.py - Connections
src/routes/connections.py - Messaging and requests
src/routes/chat.py - Notifications
src/routes/notifications.py - Role-aware dashboards
src/routes/dashboard.py
Jobs and mentorship
- Job board and applications
src/routes/jobs.py - Mentorship program
src/routes/mentorship.py
Administration and data
- Platform administration
src/routes/admin.py - Feature protocols
src/utils/protocols.py - Audit logging
src/utils/audit_logger.py - MySQL access layer
src/db.py
Other components
- Students, alumni, admins
Connections 41
- Students, alumni, admins → Authentication: register or sign in
README.md - Authentication → MySQL access layer: reads and updates
src/routes/auth.py - Authentication → OTP email service: sends OTP
src/routes/auth.py - Authentication → Password and input utilities: validates credentials
src/routes/auth.py - Flask application → Authentication: registers blueprint
src/app.py - Flask application → Role-aware dashboards: registers blueprint
src/app.py - Flask application → Profiles: registers blueprint
src/app.py - Flask application → Alumni directory: registers blueprint
src/app.py - Flask application → Connections: registers blueprint
src/app.py - Flask application → Messaging and requests: registers blueprint
src/app.py - Flask application → Job board and applications: registers blueprint
src/app.py - Flask application → Mentorship program: registers blueprint
src/app.py - Flask application → Platform administration: registers blueprint
src/app.py - Flask application → Notifications: registers blueprint
src/app.py - Flask application → Application configuration: loads settings
src/app.py - Students, alumni, admins → Profiles: manages profile
README.md - Students, alumni, admins → Alumni directory: searches alumni
README.md - Students, alumni, admins → Connections: requests connections
README.md - Students, alumni, admins → Messaging and requests: messages connections
README.md - Students, alumni, admins → Job board and applications: posts or applies
README.md - Students, alumni, admins → Mentorship program: seeks mentorship
README.md - Students, alumni, admins → Role-aware dashboards: views dashboard
README.md - Students, alumni, admins → Platform administration: administers platform
README.md - Alumni directory → MySQL access layer: queries records
src/routes/directory.py - Profiles → MySQL access layer: reads and updates
src/routes/profile.py - Connections → MySQL access layer: reads and updates
src/routes/connections.py - Connections → Feature protocols: checks limits
src/routes/connections.py - Messaging and requests → MySQL access layer: reads and updates
src/routes/chat.py - Messaging and requests → Feature protocols: checks messaging rules
src/routes/chat.py - Role-aware dashboards → MySQL access layer: queries summaries
src/routes/dashboard.py - Job board and applications → MySQL access layer: reads and updates
src/routes/jobs.py - Job board and applications → Feature protocols: checks job rules
src/routes/jobs.py - Mentorship program → MySQL access layer: reads and updates
src/routes/mentorship.py - Mentorship program → Feature protocols: checks program rules
src/routes/mentorship.py - Notifications → MySQL access layer: reads and updates
src/routes/notifications.py - Platform administration → MySQL access layer: manages records
src/routes/admin.py - Platform administration → Feature protocols: configures rules
src/routes/admin.py - Platform administration → Audit logging: reviews audit logs
src/routes/admin.py - Audit logging → MySQL access layer: stores events
src/utils/audit_logger.py - Feature protocols → MySQL access layer: reads rule settings
src/utils/protocols.py - MySQL access layer → Application configuration: uses connection settings
src/db.py