How karthikeyavb/spotlytt works
Spotlight is a professional skills and networking application: users register and verify accounts, build profiles and connections, share skill media, and interact through jobs and messaging. The React app routes those experiences to an Express API, whose controllers access Supabase; sampled post and user controllers also create notifications. Admin pages provide dashboards and media review. The README is only a Vite template, so product capabilities are inferred from the route tree and sampled code; wiring for unsampled routes and controllers is left out.
Main entry points: server.js HTTP and socket server · App.jsx Route shell · api.js API client · supabase.js Supabase client
Components 27
Web experience
- Route shell
src/App.jsx - Account access
src/pages/AuthPage.jsx - Skill feed
src/pages/SkillFeed.jsx - Profiles and people
src/pages/ProfilePage.jsx - Jobs
src/pages/JobPage.jsx - Messaging
src/pages/MessagePage.jsx - API client
src/services/api.js
API services
- HTTP and socket server
server/server.js - Auth routes
server/routes/auth.js - Post routes
server/routes/posts.js - User routes
server/routes/users.js - Job routes
server/routes/jobs.js - Message routes
server/routes/messages.js - Authentication
server/controllers/authController.js - Posts and comments
server/controllers/postController.js - Profiles and follows
server/controllers/userController.js
Persistence
- Supabase client
server/config/supabase.js - Supabase data and media
Notifications and realtime
- Notification dispatch
server/controllers/notificationController.js - Live connections
server/server.js
Administration
- Admin dashboards
src/pages/admin/AdminLaunchDashboard.jsx - Media review
src/pages/admin/AdminContentReview.jsx - Admin API client
src/services/adminApi.js - Admin routes
server/routes/admin.js - Admin operations
server/controllers/adminController.js
Other components
- Visitor or member
- Email service
Connections 31
- Visitor or member → Route shell: uses
- Route shell → Account access: routes to
- Route shell → Skill feed: routes to
- Route shell → Profiles and people: routes to
- Route shell → Jobs: routes to
- Route shell → Messaging: routes to
- Account access → API client: requests
- Skill feed → API client: requests
- Profiles and people → API client: requests
- Jobs → API client: requests
- Messaging → API client: requests
- API client → HTTP and socket server: sends API calls
- HTTP and socket server → Auth routes: mounts
- HTTP and socket server → Post routes: mounts
- HTTP and socket server → User routes: mounts
- HTTP and socket server → Job routes: mounts
- HTTP and socket server → Message routes: mounts
- Authentication → Supabase client: reads and writes
- Authentication → Email service: sends verification email
- Posts and comments → Supabase client: reads and writes
- Profiles and follows → Supabase client: reads and writes
- Supabase client → Supabase data and media: connects
- Posts and comments → Notification dispatch: creates notifications
- Profiles and follows → Notification dispatch: creates notifications
- Notification dispatch → Supabase client: persists notifications
- Notification dispatch → Live connections: emits events
- Admin dashboards → Admin API client: requests
- Media review → Admin API client: reviews content
- Admin API client → HTTP and socket server: sends API calls
- HTTP and socket server → Admin routes: mounts
- Admin operations → Supabase client: reads and writes