This directory contains the next-generation Meet2Code stack. Each service lives in its own sub-folder and can be developed or deployed independently.
backend/– Spring Boot 3 API with PostgreSQL + MongoDB persistence.frontend/– Next.js 14 React frontend with TailwindCSS styling.yjs-server/– Node.js + Express real-time synchronization server (y-websocket).peer-server/– Go-based WebRTC signaling server using Gin + Gorilla WebSocket.
- Backend
- Install Java 17+ and Maven.
cd backendand create a.envfile with the Spring Boot variables described inbackend/README.md.mvn spring-boot:run.
- Frontend
cd frontend && npm install.- Create
.env.localwith the public URLs and OAuth client IDs needed by Next.js. npm run dev.
- Yjs Server
cd yjs-server && npm install.- Optionally create
.envto override the default port/path. npm run dev.
- Peer Signaling Server
cd peer-serverand optionally create.env(e.g. to changePORT).go run ./cmd/serverormake run.
| Service | Default Port | Protocol |
|---|---|---|
| Spring Boot API | 9000 | HTTP |
| Next.js frontend | 3000 | HTTP |
| Yjs server | 1234 | HTTP + WebSocket (path /yjs) |
| Peer signaling | 8080 | HTTP + WebSocket (/ws/:room) |
- Extend the WebRTC peer server integration to drive live media streams inside
/rooms/[slug]. - Migrate historical MongoDB/Yjs data into the new structure and backfill test cases.
- Containerize each service and introduce CI/CD pipelines for coordinated deployments.