event-driven-microservices-docker-example

๐Ÿณ Simple example of event driven communication between microservices, based on Docker containers, Docker Compose and RabbitMQ. Microservices are implemented in Node.js using Koa.

nodejsdockerboilerplatekoamongodbrabbitmqrest-apievent-driven-microservicesjest-testseslint
FreeRepo

Preview

event-driven-microservices-docker-example preview

Overview

This is a proof-of-concept backend for a scalable local news application built on event-driven microservices architecture using Node.js, RabbitMQ and Docker. The system includes five microservices (articles, events, users, authentication and notifications) that communicate asynchronously through message queues rather than direct API calls, enabling independent scaling and loose coupling while supporting common operations like creating, reading, updating and deleting articles, events and user

Features

event-driven-architecturemicroservicesrabbitmq-message-brokerpub-sub-patternrest-apiauthenticationuser-managementarticle-managementevent-managementnotification-serviceemail-notificationsatomic-transactionsevent-sourcing

Feature Flags

userDashboardauthenticationsubscriptionsblogemailsauthorizationcmsnotificationscachingformsValidationeventDriven

Recommended Use Cases

scalable-backend-systemsevent-driven-applicationsmicroservices-architecturelocal-news-applicationsloosely-coupled-services

Frontend

None

Backend

nodejskoa

Auth Providers

None

Deployment Targets

dockerdocker-compose

Payment Providers

None

Quick Facts

โญ Stars
267
๐Ÿด Forks
94
๐Ÿงพ License
mit
๐Ÿ”„ Active
Unknown

Stack

Framework
koa
Language
nodejs
Database
mongodb
Testing
jest
CI
sonarcloud

Data Layer

Databases
postgresql, mongodb

UI Stack

Developer Experience

Docker
Yes
Tests
Yes
Quickstart
Yes
env.example
Yes
CI
sonarcloud

Pricing

Classification
free
Selected
โ€”
Notes
No clear pricing signals
Get Started with this Boilerplate