Is in docs folder.
AsyncAPI spec is in asyncapi.yaml, the HTML output (asyncapi.html) can be generated with AsyncAPI CLI with HTML template - DO NOT edit this file directly.
Start services with docker compose up.
Motivation:
Documenting both send and receive operations in the AsyncAPI specification provides a full picture of service interactions, making it easier to understand, maintain, and onboard developers. Comprehensive documentation ensures clarity regarding which services are responsible for publishing or subscribing to specific event channels.
Technical Direction:
- Update the
asyncapi.yamlspecification to not only describe the messages the system sends, but also those it receives. - For each channel defined, specify and differentiate between
publish(outgoing) andsubscribe(incoming) operations, reflecting every relevant message flow in your system. - Ensure all services' roles, whether publisher or subscriber, are clearly documented for each message type.
Motivation:
Recognizing and rewarding customers when they reach loyalty milestones encourages continued engagement and repeat business. Automatically sending a discount to customers at key points strengthens relationships and builds brand loyalty.
Technical Direction:
- Implement event publishing in
feathers-accounts:- When a loyalty account achieves 1000 points, publish an AMQP
account.wonevent with user details and relevant context.
- When a loyalty account achieves 1000 points, publish an AMQP
- Implement event subscription in
feathers-notifications:- Subscribe to the
account.wonevent. - On receipt, automatically generate and send an email to the affected user, including a discount code in the message body.
- Subscribe to the