🎓 EduSync¶
A Complete Campus Ecosystem Platform¶
EduSync is a comprehensive campus management platform designed for university communities. Built with modern microservices architecture using React 19, Node.js, and PostgreSQL.
7 Microservices
6 Databases
100+ API Endpoints
50+ React Components
✨ Core Features¶
-
Marketplace
Campus marketplace with vendors (startups & food shops), products, pre-owned listings, and orders with SSLCommerz payment integration.
-
RentHub
Peer-to-peer rental platform for students to list and rent items like electronics, books, sports equipment, and more.
-
NewsBox
Community-driven news feed with posts, comments, voting system, and category-based content organization.
-
Real-time Chat
Socket.io powered messaging with direct conversations, batch chatrooms, and contextual chats for orders/rentals.
-
Issue Reporting
Campus issue reporting system with voting, categorization, priority levels, and admin management.
-
UIU Notices
Real-time scraping of official UIU notices from university website with caching for fast access.
🏗️ Architecture Overview¶
graph TB
subgraph Client["🖥️ Frontend (Port 5173)"]
React[React 19 + Vite]
end
subgraph Gateway["🌐 API Gateway (Port 8000)"]
GW[Express + http-proxy-middleware]
end
subgraph Services["⚙️ Backend Microservices"]
Auth["🔐 Auth<br/>Port 3001"]
Market["🛒 Marketplace<br/>Port 3002"]
Rent["🏠 RentHub<br/>Port 3003"]
News["📰 NewsBox<br/>Port 3004"]
Notice["📋 Notices<br/>Port 3005"]
Chat["💬 Chat<br/>Port 3006"]
Issue["🚨 Issues<br/>Port 3007"]
end
subgraph Databases["🗄️ PostgreSQL (Aiven Cloud)"]
AuthDB[(auth_db)]
MarketDB[(market_db)]
RentDB[(rent_db)]
NewsDB[(newsbox_db)]
ChatDB[(chat_db)]
IssueDB[(issue_db)]
end
subgraph External["🌍 External"]
UIU[UIU Website]
SSL[SSLCommerz]
end
React --> GW
GW --> Auth
GW --> Market
GW --> Rent
GW --> News
GW --> Notice
GW --> Chat
GW --> Issue
Auth --> AuthDB
Market --> MarketDB
Rent --> RentDB
News --> NewsDB
Chat --> ChatDB
Issue --> IssueDB
Notice -.-> UIU
Market -.-> SSL
React -.->|Socket.io| Chat
🛠️ Tech Stack¶
📊 Service Overview¶
| Service | Port | Database | Description |
|---|---|---|---|
| Auth Service | 3001 |
auth_db |
JWT authentication, OTP verification, user profiles, role management |
| Marketplace Service | 3002 |
market_db |
Vendors, products, pre-owned listings, orders, payments |
| RentHub Service | 3003 |
rent_db |
Rental listings and peer-to-peer transactions |
| NewsBox Service | 3004 |
newsbox_db |
Community posts, comments, voting system |
| Notices Service | 3005 |
In-memory | UIU notice scraping with 5-min cache |
| Chat Service | 3006 |
chat_db |
Real-time messaging with Socket.io |
| Issue Service | 3007 |
issue_db |
Campus issue reporting and tracking |
| Gateway | 8000 |
None | API routing and proxy |
| Client | 5173 |
None | React SPA frontend |
🚀 Quick Start¶
📚 Documentation Sections¶
Installation and setup guides
System design and patterns
Complete endpoint documentation
React components and state
Schema and data management
Local, production, and Docker
User and admin tutorials
Join the development
Made with ❤️ for the UIU Community