hellosatish/microservice-patterns
51.2
Adequate · 22 September 2026
1.7k
lines of production code
Java
with Go
6
measurements over time
What this system is
This system is a collection of microservice-based applications and demos, primarily built with Spring Boot and Javalin. It includes a vehicle tracking simulation that publishes GPS data to Kafka for real-time status monitoring, alongside a centralized Swagger documentation service that aggregates API definitions. Additionally, the codebase features standalone examples for service registration with Eureka, IDOR prevention techniques, and basic CRUD operations.
Features
Add Go-based service registration with Netflix Eureka
The project now includes Go source files that enable the application to register itself as a service instance in a service registry. Specifically, the code implements registration and heartbeat management for Netflix Eureka, using environment variables (REGISTRY\_TYPE, REGISTRY\_URL, etc.) to configure the connection. The implementation includes HTTP helpers for POST/PUT calls and utility functions to discover the host's IP address, allowing the service to advertise its network location to the registry.
awesomeProject · high confidence
Add IDOR prevention demo application
A new Spring Boot application is introduced to demonstrate Insecure Direct Object Reference (IDOR) prevention. The project includes a mock database service, a utility for obfuscating identifiers using Base64 encoding, and REST controllers that expose both vulnerable and secured endpoints. The secured endpoints use the utility to resolve obfuscated IDs, while the vulnerable endpoints expose raw IDs. The application also configures Swagger UI for API documentation and includes a basic integration test.
idor-prevention · high confidence
Add Javalin-based CRUD demo application
A new Javalin micro-framework sample has been added to demonstrate CRUD operations on a Person entity. The addition includes the main application entry point, a controller handling HTTP routes for creating, reading, updating, and deleting persons, an in-memory database implementation for data storage, and the Person model class.
micro-frameworks/javalin-app · high confidence
Add vehicle simulation endpoint and centralized Swagger documentation
The vehicle simulator now exposes a new REST endpoint at /simulate/{number-of-vehicle}/{emit-interval}/{stop-index} to trigger vehicle simulation signals. Additionally, the codebase introduces a centralized Swagger UI configuration via Springfox, including a new ServiceDefinitionsContext component for managing API definitions and entity classes for Employee and Person to support the documentation.
vehicle-simulator · medium confidence
Added vehicle tracking models and a dashboard service to count online/offline vehicles
Introduced new domain models for the vehicle tracker system, including DriverInfo, Vehicle, VehicleCount, and VehicleLocation in the common-libs module. In the tracker-dashboard, a new Kafka Streams processor (VehicleStatusCountProcessor) consumes GPS location data, classifies vehicles as Online or Offline, and maintains a running count of each status. A corresponding REST endpoint (/count/{status}) in VehicleQueryService exposes these counts to users, allowing the dashboard to display real-time vehicle status metrics.
vehicle-tracker/common-libs, vehicle-tracker/tracker-dashboard · high confidence
Centralized Swagger documentation setup for microservices
Added a centralized documentation solution using Springfox Swagger-UI to consolidate REST API documentation across multiple microservices. The change introduces a \documentation-service\ that aggregates Swagger JSON definitions from registered service instances (such as \employee-application\ and \person-application\) into a single endpoint. This allows users to access all API documentation through one unified interface instead of navigating to each service's individual Swagger-UI. The \README.md\ provides an overview of the problem, solution, and project structure, while \.gitignore\ and Maven wrapper scripts are added to each sub-project (\central-docs-eureka-server\, \documentation-app\, \employee-application\, \person-application\) to support the build environment.
centralized-swagger-docs · high confidence
Initial release of the vehicle simulator service
The vehicle-tracker/vehicle-simulator module is introduced, providing a Spring Boot application that simulates vehicle location data. The service generates simulated GPS coordinates and publishes them to a Kafka topic named 'gpslocation' using a Kafka producer. The simulation logic includes both asynchronous signal emission and scheduled tasks to periodically update vehicle status. Additionally, Swagger 2 documentation is configured to expose the API interface.
vehicle-tracker/vehicle-simulator · high confidence
Dependencies
Add Maven build configurations for multiple microservices and sample apps
This change introduces new Maven project files (pom.xml) for several distinct components: a centralized Swagger documentation setup (including Eureka server, documentation app, employee, and person applications), an IDOR prevention demo, a Javalin microframework sample, and a vehicle tracker suite (simulator, dashboard, and common libs). Each file defines the project's dependencies, such as Spring Boot, Spring Cloud, Springfox Swagger, and Kafka, establishing the build structure for these specific parts of the codebase.
(dependencies) · medium 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 52 → 51 (-1.1)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 99 (-1.0)
- Architecture 100 → 77 (-23.4)
- Maturity 55 → 55 (+0.0)
- Readiness 24 → 29 (+4.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
- Duplicated block (11 lines × 2) (idor-prevention/src/main/java/org/sk/owasp/api/security/idor/config/SwaggerConfigurations.java)
- LLM evaluation failed
- 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
New (28)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Documentation: no licence statement (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (17 lines × 2) (idor-prevention/src/main/java/org/sk/owasp/api/security/idor/config/SwaggerConfigurations.java)
- Duplicated block (31 lines × 2) (centralized-swagger-docs/employee-application/src/main/java/com/satish/central/docs/employee/config/SwaggerDocumentationConfiguration.java)
- Duplicated block (8 lines × 2) (idor-prevention/src/main/java/org/sk/owasp/api/security/idor/config/SwaggerConfigurations.java)
- Duplicated block (9 lines × 2) (idor-prevention/src/main/java/org/sk/owasp/api/security/idor/config/SwaggerConfigurations.java)
- No ADRs found
- No assertions (empty test): contextLoads (centralized-swagger-docs/central-docs-eureka-server/src/test/java/com/satish/central/docs/server/CentralDocsEurekaServerApplicationTests.java)
- No assertions (empty test): contextLoads (centralized-swagger-docs/documentation-app/src/test/java/com/satish/central/docs/DocumentationAppApplicationTests.java)
- No assertions (empty test): contextLoads (centralized-swagger-docs/employee-application/src/test/java/com/satish/central/docs/employee/EmployeeApplicationTests.java)
- No assertions (empty test): contextLoads (centralized-swagger-docs/person-application/src/test/java/com/satish/central/docs/person/PersonApplicationTests.java)
- No assertions (empty test): contextLoads (idor-prevention/src/test/java/org/sk/owasp/api/security/idor/IdorPreventionApplicationTests.java)
- No assertions (empty test): contextLoads (vehicle-tracker/common-libs/src/test/java/com/sk/vtracker/commons/CommonLibsApplicationTests.java)
- No assertions (empty test): contextLoads (vehicle-tracker/tracker-dashboard/src/test/java/org/sk/vtracker/dashboard/TrackerDashboardApplicationTests.java)
- No assertions (empty test): contextLoads (vehicle-tracker/vehicle-simulator/src/test/java/org/sk/vtracker/simulator/VehicleSimulatorApplicationTests.java)
- Scanner failed to run — not a clean result
- Scanner failed to run — not a clean result
- Test project verifies nothing: central-docs-eureka-server (centralized-swagger-docs/central-docs-eureka-server/src/test/java/com/satish/central/docs/server/CentralDocsEurekaServerApplicationTests.java)
- …and 8 more
Architecture
- Containers 0 added · 0 removed · contexts 3 added · 0 removed · edges 0 added · 0 removed
Added bounded contexts (3)
- documentation-apps
- employee-application
- person-application
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
hellosatish/microservice-patterns 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 22 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 88da956906c6b8438d637fb07adecc585f904a60 — 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-90d5d2fe38ee.