javatarz/serverless-cqrs
43.4
Weak · 21 September 2026
482
lines of production code
JavaScript
primary language
4
measurements over time
What this system is
This system is a serverless microservices application built on AWS using a CQRS architecture, consisting of distinct services for customers, menu, and orders. It manages domain events via Amazon SNS to synchronize state across separate DynamoDB tables, ensuring eventual consistency between command handlers and read models. The services expose HTTP endpoints for core operations like signing up users, managing menu items, and handling orders, with local development supported by the Serverless framework.
Features
Initial Orders service with CQRS and event-driven persistence
The orders service is introduced as a new component implementing a Command Query Responsibility Segregation (CQRS) architecture. It exposes HTTP endpoints to open new orders (command) and retrieve order lists or individual orders (queries), persisting data in Amazon DynamoDB. The service also includes event listeners that react to domain events—such as \orderOpened\, \menuItemAdded\, and \customerSignedUp\—published via Amazon SNS to synchronize related data across the system.
orders · high confidence
Initial customers domain service with CQRS and event persistence
This change introduces the initial implementation of the customers domain service, establishing a Command Query Responsibility Segregation (CQRS) architecture. It exposes HTTP endpoints for signing up customers and retrieving customer data, backed by AWS DynamoDB tables for both the customer store and an event log. The service publishes domain events (such as 'customerSignedUp') to an SNS topic, which triggers listener functions to persist these events and update the customer read-model, ensuring eventual consistency across the system.
customers · high confidence
Initial menu service implementation with CQRS and event persistence
This change introduces the core menu service, providing HTTP endpoints to add menu items (via a command) and retrieve them (via queries). It implements a CQRS pattern where adding an item triggers a 'menuItemAdded' event published to an SNS topic, which is then consumed by listeners to persist both the event and the resulting menu item data into separate DynamoDB tables. The service includes validation to ensure menu items have a description and price, and supports local development via Serverless Offline with DynamoDB and SNS emulation.
menu · high confidence
Initial project setup with Serverless CQRS architecture and local development tooling
This change introduces the foundational structure for a Serverless CQRS application on AWS, including configuration for the Serverless framework, AWS CLI, and Node.js via a Brewfile. It establishes coding standards through an EditorConfig file and updates the .gitignore to exclude build artifacts and serverless-specific directories. The README is expanded to provide comprehensive instructions for building, deploying, and running the services (menu, customers, orders) locally using the Serverless offline plugin, along with guidance for accessing the DynamoDB console.
(repo-wide) · high confidence
Dependencies
Initial dependency manifests for serverless services
Added package.json files for the customers, menu, and orders services, establishing their initial dependency sets. These manifests define runtime dependencies including aws-sdk, express, and serverless-http, along with development tools such as mocha, chai, and serverless-offline for local testing.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 43 → 43 (+0.7)
- Rubric changed (rubric-2026.08.18 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 54 → 54 (+0.1)
- Architecture 69 → 69 (+0.0)
- Maturity 53 → 51 (-2.5)
- Readiness 24 → 27 (+2.8)
- Security 100 → 100 (+0.0)
Resolved (9)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- No exposed public API
- Scanner failed to run — not a clean result
- Test reliability not included
- early-stage repository — too few commits for a meaningful bus factor
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- git history depth insufficient
New (7)
- Coverage not measured — JavaScript/TypeScript suite
- Dependency hygiene PARTLY measured — npm pinning read, dependency currency not (no committed lockfile, so no resolved version to grade)
- Documentation: no project overview (README.md)
- Documentation: no usage examples (README.md)
- No ADRs found
- Scanner failed to run — not a clean result
- Scanner failed to run — not a clean result
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
javatarz/serverless-cqrs was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 55d0db7f69dd34ead231bc4a463c76138a9da33a — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-28e75b8e3254.