quiz-app — README.md
README.md
eureka-client.yml

#Quiz Application

Microservices quiz platform

##Problem

Bundling authentication, quiz content, and result computation into one deployable unit makes each piece harder to scale or change independently. Quiz Application splits these concerns into services that discover and talk to each other via Netflix Eureka, with JWT protecting who can take a quiz and PostgreSQL as the system of record.

##Architecture / How it works

Hand-sketched whiteboard diagram of the Quiz Application microservices topology: client through JWT-authenticated services that register with Netflix Eureka, storing results in PostgreSQL

fig. 1 — service topology, sketched on a whiteboard

Services register with and discover each other through a Netflix Eureka discovery server rather than hardcoded addresses. JWT secures user authentication, and result computation happens in real time with results stored in PostgreSQL.

##Tech Stack

yaml
1
2
3
4
stack:
backend: spring-boot
discovery: netflix-eureka
auth: jwt

##Key Engineering Decisions

md
1
2
3
- [x] service discovery via Netflix Eureka instead of hardcoded service URLs
- [x] JWT-based authentication securing access to quizzes
- [x] real-time result computation, persisted to PostgreSQL

##Links

⎇ main Quiz App · Spring Boot · Eureka UTF-8