Personal · 2025–26
Social Network
A social network with a feed, groups, private and group chats, privacy settings and real-time updates.

Image 1 of 3
Problem
Bring publishing and communication together with access control that accounts for friendships, blocks, profile privacy and group membership.
Implementation
- React and TypeScript client: feed, comments, reactions, profiles and groups.
- Symfony API with Doctrine, PostgreSQL and JWT authentication.
- Friend requests, blocking and privacy settings.
- Private and group chats, media uploads to MinIO/S3 and live updates through Mercure (SSE).
- Docker Compose and Nginx; Playwright scenarios for authentication, posts and profiles.
Decision
The React client and Symfony API evolve separately. React Query manages server data in the interface, Mercure delivers events, and MinIO stores uploaded files.
Align the visibility of posts and messages with user relationships and real-time updates.
Outcome
The client, API, Docker environment and end-to-end tests are published. A separate demo link is available for the project.