How chandrashekhar235/learn-bridge works
LearnBridge is a social learning application: users create profiles, discover people and communities, connect and message, publish blogs, and join voice/video rooms. The React client routes users to these experiences; an Express/Mongoose backend provides authentication and domain APIs, with Socket.IO supporting real-time communication. Group and voice-room access requests are distinct from direct connections. The available excerpts show selected route, model, and socket behavior; several feature pages and integrations are indexed but not sampled, so their internal links are left out.
Main entry points: server.js HTTP and socket server · App.jsx Page router · ChatRoutes.js Chat and connections API · auth.js JWT guard
Components 27
Web client
- Page router
src/App.jsx - Profiles
src/pages/Profile.jsx - Explore
src/pages/Explore.jsx - Blog publishing
src/pages/Blogs.jsx - Group admin
src/pages/GroupAdmin.jsx - Room discovery
src/pages/Rooms.jsx - Video calls
src/pages/Vc.jsx
Identity
- Login
src/pages/Login.jsx - Google sign-in
src/components/GoogleAuthButton.jsx - Account and profile API
backend/routes/UserRoutes.js - JWT guard
backend/middleware/auth.js - User records
backend/models/User.js
Community
- Blog API
backend/routes/BlogRoutes.js - Blog records
backend/models/Blog.js - Groups API
backend/routes/GroupRoutes.js - Group records
backend/models/Group.js - AI routes
backend/routes/AiRoutes.js
Messaging
- Chat hub
src/components/ChatHub.jsx - Socket client context
src/context/SocketContext.jsx - Chat and connections API
backend/routes/ChatRoutes.js - Connection requests
backend/models/ConnectionRequest.js - Conversations
backend/models/Conversation.js - Messages
backend/models/Message.js - HTTP and socket server
backend/server.js
Rooms and calls
- Voice-room API
backend/routes/VcRoutes.js - Voice-room records
backend/models/VcRoom.js
Other components
- Learner
Connections 38
- Learner → Page router: uses
src/App.jsx - Page router → Login: routes to
src/App.jsx - Page router → Profiles: routes to
src/App.jsx - Page router → Explore: routes to
src/App.jsx - Page router → Blog publishing: routes to
src/App.jsx - Page router → Group admin: routes to
src/App.jsx - Page router → Room discovery: routes to
src/App.jsx - Page router → Video calls: routes to
src/App.jsx - Login → Google sign-in: offers
src/pages/Login.jsx - Google sign-in → Account and profile API: posts credential
src/components/GoogleAuthButton.jsx - Account and profile API → User records: reads and writes
backend/routes/UserRoutes.js - JWT guard → User records: loads user
backend/middleware/auth.js - Account and profile API → JWT guard: protects profile
backend/routes/UserRoutes.js - Profiles → Account and profile API: uses profile API
- Blog publishing → Blog API: uses blog API
- Blog API → Blog records: reads and writes
backend/routes/BlogRoutes.js - Group admin → Groups API: uses groups API
- Groups API → Group records: reads and writes
backend/routes/GroupRoutes.js - Groups API → JWT guard: protects actions
backend/routes/GroupRoutes.js - Chat hub → Socket client context: uses socket
src/components/ChatHub.jsx - Chat hub → Chat and connections API: uses chat API
- Socket client context → HTTP and socket server: connects to
src/context/SocketContext.jsx - Chat and connections API → JWT guard: protects routes
backend/routes/ChatRoutes.js - Chat and connections API → User records: queries users
backend/routes/ChatRoutes.js - Chat and connections API → Connection requests: manages requests
backend/routes/ChatRoutes.js - Chat and connections API → Conversations: queries conversations
backend/routes/ChatRoutes.js - HTTP and socket server → Messages: creates messages
backend/server.js - HTTP and socket server → Conversations: reads and updates
backend/server.js - HTTP and socket server → Chat hub: delivers live events
- Room discovery → Voice-room API: uses room API
- Video calls → HTTP and socket server: uses realtime calls
- Voice-room API → Voice-room records: reads and writes
backend/routes/VcRoutes.js - Voice-room API → JWT guard: protects actions
backend/routes/VcRoutes.js - HTTP and socket server → Chat and connections API: mounts routes
backend/server.js - HTTP and socket server → Blog API: mounts routes
backend/server.js - HTTP and socket server → Groups API: mounts routes
backend/server.js - HTTP and socket server → Voice-room API: mounts routes
backend/server.js - HTTP and socket server → AI routes: mounts routes
backend/server.js