How harshiit112/alpha_slack works
Alpha Slack is a real-time team messaging and video-collaboration app. Users authenticate through Clerk, enter the React workspace, and connect to Stream for chat; calls use the video experience. The backend verifies requests and issues Stream tokens. Separately, Clerk user events trigger Inngest workflows that synchronize user records and Stream accounts. The README also documents channel/member tools and telemetry. Those broader UI capabilities are represented at their enclosing paths; their internal wiring was not sampled, so uncertain links are omitted.
Main entry points: App.jsx App routing · server.js Express app · inngest.js Event functions · HomePage.jsx Workspace chat
Components 23
Client app
- App routing
frontend/src/App.jsx - Sign-in
frontend/src/pages/AuthPage.jsx - Workspace chat
frontend/src/pages/HomePage.jsx - Video calls
frontend/src/pages/CallPage.jsx - User directory
frontend/src/pages/UsersList.jsx - Channel tools
frontend/src/components - Chat connection
frontend/src/hooks/useStreamChat.js - Token setup
frontend/src/providers/AuthProvider.jsx - API client
frontend/src/lib/api.js
Backend API
- Express app
backend/src/server.js - Chat routes
backend/src/routes/chat.route.js - Token controller
backend/src/controllers/chat.controller.js - Stream config
backend/src/config/stream.js - Auth middleware
backend/src/middleware/auth.middleware.js - Database connection
backend/src/config/db.js
User sync
- Event functions
backend/src/config/inngest.js - User model
backend/src/models/user.model.js
External services
- Clerk
- Stream chat and video
- MongoDB
- Inngest service
- Sentry
Other components
- Workspace user
Connections 30
- Workspace user → App routing: uses
- App routing → Sign-in: routes
- App routing → Workspace chat: routes
- App routing → Video calls: routes
- App routing → User directory: routes
- Workspace chat → Channel tools: renders
- Workspace chat → Chat connection: connects via
- Chat connection → API client: requests token
- API client → Express app: HTTP request
- Express app → Chat routes: dispatches
- Chat routes → Auth middleware: protects
- Chat routes → Token controller: dispatches
- Token controller → Stream config: generates token
- Stream config → Stream chat and video: creates token
- Chat connection → Stream chat and video: connects chat
- Video calls → Stream chat and video: uses video
- Express app → Database connection: connects lazily
- Database connection → MongoDB: connects
- Clerk → Sign-in: authenticates
- Token setup → Clerk: gets session token
- Token setup → API client: adds bearer token
- Clerk → Inngest service: sends user events
- Express app → Event functions: serves functions
- Inngest service → Event functions: invokes events
- Event functions → Database connection: connects database
- Event functions → User model: creates or deletes
- User model → MongoDB: stores user records
- Event functions → Stream config: syncs Stream users
- Express app → Sentry: reports errors
- App routing → Sentry: reports telemetry