tristanfaure.com /projects / twitter-clone
Epitweet
Event-driven microservices backend for an X-style platform — CQRS, 4 datastores
2026 · ACADEMIC
Stack
Java 21 · Quarkus · MongoDB · Neo4j · Elasticsearch · Redis · Kubernetes · GitLab CI
Key figures
- Services
- 6 microservices
- Datastores
- Mongo ×2 · Neo4j · ES · Redis
- Tests
- 148 test methods
- Deploy
- 43 K8s manifests
A distributed micro-blogging backend built as 6 Quarkus (Java 21) microservices by a ~12-student team in 4 weeks — Tristan among the main contributors, focused on services, events and CI.
CQRS with polyglot persistence: separate MongoDB write and read stores, Neo4j for the social graph (follows, blocks, likes as edges), Elasticsearch for full-text and hashtag search, and Redis pub/sub as the event bus — timeline read models (personal + subscriptions) are materialized on write by dedicated projection services.
Features: posts with media upload (multipart + GridFS), replies and reposts, likes, follows, blocks, two timeline projections, and post/user search — documented in a 797-line OpenAPI spec.
Production-shaped deployment path: CI builds Quarkus Jib images and pushes them to the registry; 43 Kustomize Kubernetes manifests with StatefulSets for the datastores; indexed read models and denormalized counters keep feed reads cheap.
210 Java files (~6,000 LOC + ~3,900 LOC of tests, 148 test methods) and 1,600 lines of architecture documentation across per-service READMEs.
Links
- Source is private — access on request, via the contact details.
All 33 projects · Open the interactive portfolio · About Tristan