How kajjayamadithya/wavereach works
NxtWave’s product is a student workshop registration and growth platform. Students register through the portal; the backend validates the submission, records attribution and referral details, and returns a referral pass. Students can then track referrals and view the leaderboard, while campaign operators inspect analytics and export results. The React app also offers a strategy guide and seed/reset controls. The README documents Supabase with persistent local fallback. Some route and UI implementations were only partially sampled, so the graph omits uncertain internal links.
Main entry points: App.jsx App navigation · database.py Persistence client · analytics.py Analytics and export · api.js REST API client
Components 19
Web experience
- React entry
frontend/src/main.jsx - App navigation
frontend/src/App.jsx - Strategy guide
frontend/src/components/StrategyGuide.jsx - Navigation and controls
frontend/src/components/Navbar.jsx
Registration and referrals
- Registration portal
frontend/src/components/RegistrationForm.jsx - Referral tracker
frontend/src/components/ReferralTracker.jsx - Registration and referrals
backend/app/routes/registrations.py
Campaign analytics
- Analytics dashboard
frontend/src/components/AnalyticsDashboard.jsx - Analytics and export
backend/app/routes/analytics.py - Seed generator
backend/app/routes/seed_data.py
API and persistence
- REST API client
frontend/src/api.js - FastAPI application
backend/app/main.py - Request and response schemas
backend/app/models.py - Runtime settings
backend/app/config.py - Persistence client
backend/app/database.py - Registrations store
backend/schema.sql
Other components
- Student
- Campaign operator
- Supabase
Connections 25
- Student → React entry: opens portal
README.md - Campaign operator → React entry: opens dashboard
README.md - React entry → App navigation: mounts
frontend/src/main.jsx - App navigation → Navigation and controls: renders
frontend/src/App.jsx - App navigation → Registration portal: renders
frontend/src/App.jsx - App navigation → Referral tracker: renders
frontend/src/App.jsx - App navigation → Analytics dashboard: renders
frontend/src/App.jsx - App navigation → Strategy guide: renders
frontend/src/App.jsx - App navigation → REST API client: loads status
frontend/src/App.jsx - Registration portal → REST API client: submits registration
frontend/src/components/RegistrationForm.jsx - Referral tracker → REST API client: fetches referral data
frontend/src/components/ReferralTracker.jsx - Analytics dashboard → REST API client: fetches metrics
frontend/src/components/AnalyticsDashboard.jsx - REST API client → FastAPI application: calls REST API
README.md - FastAPI application → Registration and referrals: routes requests
backend/app/main.py - FastAPI application → Analytics and export: routes requests
backend/app/main.py - Registration and referrals → Request and response schemas: validates and shapes
backend/app/routes/registrations.py - Analytics and export → Request and response schemas: shapes metrics
backend/app/routes/analytics.py - Registration and referrals → Persistence client: reads and writes
backend/app/routes/registrations.py - Analytics and export → Persistence client: reads and clears
backend/app/routes/analytics.py - Analytics and export → Seed generator: generates sample records
backend/app/routes/analytics.py - FastAPI application → Persistence client: checks health
backend/app/main.py - Persistence client → Runtime settings: loads connection config
backend/app/database.py - Persistence client → Supabase: queries when configured
README.md - Persistence client → Registrations store: persists registration data
README.md - Analytics and export → Campaign operator: exports CSV
README.md