A backend for a gamer-focused chat application where only users with over 500 hours on Steam can join. Built with MongoDB, it integrates OpenID for Steam-based authentication, real-time messaging with Socket.IO, and file handling with Amazon S3. This project follows Uncle Bob's Clean Architecture principles to ensure a robust, maintainable structure. Monitoring is implemented with Grafana and Prometheus, along with Node Exporter for comprehensive dashboard insights.
This project is structured following the Clean Architecture principles, inspired by go-clean-arch by bxcodec. The architecture ensures separation of concerns, making the codebase scalable, maintainable, and testable. Each layer has clearly defined responsibilities, promoting a strong dependency rule from outer to inner layers.