Spring Boot backend for Milly — a multi-venue restaurant ordering platform. One API serves staff (venue operations) and customers (table ordering): REST for reads/writes, STOMP over WebSocket for real-time updates, PostgreSQL as the system of record.
Quick start: documenation/installation.md. Day-to-day workflow: documenation/development-instructions.md.
| Full name | GitHub | |
|---|---|---|
| Ali Safarli | linkedin.com/in/ali-safarli-7a01a7297 | github.com/alisafarli06 |
| Mikayil Guliyev | linkedin.com/in/mikayil-guliyev-341275306 | github.com/miko44quliyev |
| Ilkin Ismayilov | linkedin.com/in/ilkin-ismayilov2 | github.com/ilkinismayilov-905 |
| Yusif Xankishiyev | linkedin.com/in/yusif-xankishiyev | github.com/XankisiyevYusif |
| Omar Ismayilov | linkedin.com/in/omar-ismayilov-6b97b9337 | github.com/AnonimProgrammer |
| Link | URL |
|---|---|
| Frontend repository | github.com/AnonimProgrammer/milly-front |
| Live application | milly-front.vercel.app |
Start with the system overview, then jump to the flow you need.
| Document | What it covers |
|---|---|
| System Design | High-level architecture, modules, related docs index |
| Installation | Docker Compose, local Gradle run |
| Environment Setup | Environment variables and profiles |
| Development Instructions | Layout, adding features, migrations, tests, git |
| API Documentation | Bruno collection + Swagger / OpenAPI |
| Security Flow | Identity model; links to security subdocs |
| WebSocket Flow | STOMP tickets and subscription guards |
| AI Integration | AI ports, OpenRouter, enablement |
| Table Chatbot | Table chat WebSocket + AI flow |
| Billing Flow | Payments and billing API behaviour |
Security deep-dives live under documenation/security/.
| Tool | Use when |
|---|---|
| Swagger UI | Browse live OpenAPI while the server is running |
| Bruno | Scripted / cookie-friendly request suites checked into the repo |
Details and setup: documenation/api-documentation.md.
| Resource | URL / path |
|---|---|
| Swagger UI | http://localhost:8080/swagger-ui.html |
| OpenAPI JSON | http://localhost:8080/v3/api-docs |
| Bruno collection | bruno/ |
Auth for staff APIs uses HttpOnly access-token cookies. Bruno is usually easier for full login → protected-call flows; Swagger is best for discovering shapes and trying individual endpoints.