How jb21-main/clunnect works
Clunnect is a Flask application for UTD users to create accounts, authenticate, discover clubs, and join them; the README also lists club creation as a current feature. The main workflow runs from browser requests through Flask routes to domain controllers and persistent data. The tree and excerpts support additional account, event, and calendar capabilities, though event pages are noted as incomplete. The graph shows only wiring evidenced by sampled source or README; controller wiring in omitted route sections is not assumed.
Main entry points: TestApp.py Flask routes · DBmgr.py Database access · AuthController.py Authentication · EventController.py Event management
Components 17
Web interface
- Flask routes
src/main/TestApp.py - Page templates
src/main/Templates
Club and event workflows
- Club management
src/main/Controllers/ClubController.py - Club membership
src/main/Controllers/JoinClubController.py - Club search
src/main/Controllers/SearchController.py - Event management
src/main/Controllers/EventController.py - Calendar view
src/main/Controllers/CalendarController.py
Accounts and identity
- Authentication
src/main/Controllers/AuthController.py - Account updates
src/main/Controllers/AccountController.py - User creation
src/main/Services/UserCreator.py - Password verification
src/main/Services/Verifier.py - Session tokens
src/main/Services/SessionManager.py - Input validation
src/main/Services/ValidationService.py
Data and persistence
- Domain models
src/main/Data - Database access
src/main/Services/DBmgr.py
Other components
- Browser user
- Supabase
Connections 28
- Browser user → Flask routes: sends requests
- Flask routes → Page templates: renders pages
- Flask routes → Authentication: authenticates users
- Flask routes → Club management: manages clubs
- Flask routes → Club membership: joins clubs
- Flask routes → Club search: searches clubs
- Flask routes → Event management: manages events
- Flask routes → Calendar view: loads calendar
- Flask routes → Account updates: updates account
- Authentication → Input validation: validates email
- Authentication → Password verification: checks password
- Authentication → Session tokens: creates tokens
- Authentication → User creation: creates accounts
- Authentication → Database access: looks up users
- User creation → Database access: persists users
- Account updates → Database access: updates users
- Club management → Database access: reads and writes clubs
- Club membership → Database access: checks and adds members
- Club search → Database access: searches clubs
- Event management → Input validation: validates event data
- Event management → Database access: reads and writes events
- Calendar view → Database access: loads member events
- Calendar view → Database access: gets club memberships
- Event management → Domain models: creates event objects
- Club management → Domain models: creates club objects
- Club membership → Domain models: builds club object
- Database access → Supabase: accesses data
- Calendar view → Supabase: queries events