How sathvikboina/alucon works
AlumniConnect is a MERN alumni-engagement platform. Members enter through the React app, authenticate, and use it for profiles, networking, mentorship, community content, events, resources, and messaging; administrators also manage users, achievements, and institutional showcases. Express routes provide API capabilities backed by MongoDB models, with Socket.io for live messaging and a local embedding-based search service. The README documents additional deterministic matching and feed capabilities; their detailed wiring was not sampled, so those links are shown as unverified.
Main entry points: Routes.js Page routing · server.js Express API · searchIndex.js Search ranking and index · auth.js Authentication API
Components 27
Member application
- React application
client/src/App.js - Page routing
client/src/components/routing/Routes.js - Login actions
client/src/actions/auth.js - Profiles and dashboard
- Groups
client/src/components/groups/GroupDetail.jsx - Posts and feed
client/src/components/posts/Posts.jsx - Events
client/src/components/Event/event.jsx - Achievements
client/src/components/achievements/AdminAchievements.jsx - Messenger
client/src/components/messenger/Messenger.jsx
API and identity
- Express API
server/server.js - Authentication API
server/routes/api/auth.js - Token authorization
server/middleware/auth.js
Community capabilities
- Group API
server/routes/api/groups.js - Achievement API
server/routes/achievement/achievements.js - Showcase management
server/routes/showcaseRoutes.js - Live messaging
server/server.js
Discovery and matching
- Unified search API
server/routes/api/search.js - Search ranking and index
server/services/searchIndex.js - Text embeddings
server/services/embeddings.js - Mentor and job matching
server/services/matching.js
Persistence and integrations
- Member records
server/models/User.js - Group records
server/models/Group.js - Search documents
server/models/SearchDocument.js - Achievement records
server/models/Achievement.js
Other components
- Member
- Cloudinary
- MongoDB
Connections 26
- Member → React application: uses
client/src/App.js - React application → Page routing: routes to
client/src/App.js - Page routing → Profiles and dashboard: routes to
client/src/components/routing/Routes.js - Page routing → Groups: routes to
client/src/components/routing/Routes.js - Page routing → Posts and feed: routes to
client/src/components/routing/Routes.js - Page routing → Events: routes to
client/src/components/routing/Routes.js - Page routing → Achievements: routes to
- Page routing → Messenger: routes to
client/src/components/routing/Routes.js - Login actions → Authentication API: requests auth
client/src/actions/auth.js - Express API → Authentication API: mounts route
server/server.js - Express API → Group API: mounts route
server/server.js - Express API → Achievement API: mounts route
server/server.js - Authentication API → Member records: reads member
server/routes/api/auth.js - Token authorization → Member records: checks member
server/middleware/auth.js - Group API → Group records: reads and writes
server/routes/api/groups.js - Achievement API → Achievement records: reads and writes
server/routes/achievement/achievements.js - Express API → Showcase management: mounts route
server/server.js - Showcase management → Cloudinary: uploads media
- Unified search API → Search ranking and index: runs search
server/routes/api/search.js - Search ranking and index → Text embeddings: embeds text
server/services/searchIndex.js - Search ranking and index → Search documents: stores index
server/services/searchIndex.js - Search ranking and index → Member records: indexes members
server/services/searchIndex.js - Express API → Live messaging: hosts sockets
server/server.js - Messenger → Live messaging: exchanges messages
- Mentor and job matching → Member: matches members
- Express API → MongoDB: persists records