Mission: To create a high-fidelity, university-exclusive distinct connection platform. Aesthetic: "Vercel-Minimalism" — Dark mode default, sans-serif typography (Inter/Geist), high contrast, zero clutter.
uKnight is where spontaneity meets safety. Inspired by platforms like Omegle but designed exclusively for the university community, uKnight leverages verified .edu authentication to create a "walled garden" for students to connect, collaborate, and network.
- Verified Community: Only students with valid university emails can join.
- High Performance: Real-time video/audio via WebRTC with sub-100ms matchmaking.
- Premium UX: A sleek, minimal interface designed for speed and clarity.
- Framework: Next.js 14+ (App Router)
- Styling: Tailwind CSS + Framer Motion (for high-fidelity animations)
- UI: Shadcn/ui (Accessible, monochrome-clean components)
- Core: Java Spring Boot 21
- Real-time: WebSockets (STOMP protocol)
- Matchmaking: Redis In-Memory Data Store
- Database: PostgreSQL
graph TD
User[User Client] -->|HTTPS/Next.js| Vercel[Frontend Host]
User -->|WebSocket| LB[Load Balancer]
User -->|WebRTC P2P| Peer[Peer Client]
LB --> Spring[Spring Boot Cluster]
Spring -->|Read/Write| Postgres[(PostgreSQL)]
Spring -->|Queue/Match| Redis[(Redis)]
subgraph "The Magic"
Redis --> Matchmaker[Matchmaking Service]
Matchmaker --> Spring
end
- Auth System: Secure login restricted to
.edudomains. - Lobby UI: Real-time "Online Knights" counter.
- [/] Matchmaking: WebSocket-driven pairing queue.
- WebRTC Video: Ultra-low latency P2P video/audio streams.
- Instant Skip: One-click disconnect and re-queue.
- Text Fallback: Persistent chat during video sessions.
- Interest Matching: Tag-based filtering (e.g., Major, Hobbies).
- AI Guard: Real-time moderation layer for safety.
- Docker & Docker Compose
- Node.js 18+
- Java 21 & Maven
The easiest way to get uKnight running locally is via Docker Compose:
docker-compose up --build- Frontend: http://localhost:3000
- Backend: http://localhost:8080
cd backend/server
./mvnw spring-boot:runcd frontend
npm install
npm run devThis project is licensed under the MIT License - see the LICENSE file for details.
Built with ❤️ for the University Community.