nutes-uepb/template-base-ts
52.7
Adequate · 20 September 2026
4.3k
lines of production code
TypeScript
primary language
4
measurements over time
What this system is
This system is a TypeScript microservice template built on clean architecture principles, designed to provide a standardized foundation for developing scalable services. It integrates Express.js for HTTP handling, MongoDB via Mongoose for data persistence, and RabbitMQ for asynchronous messaging, all managed through an InversifyJS dependency injection container. The template includes concrete examples, such as an activity-tracking service, along with comprehensive tooling for testing, static analysis, and API documentation.
Features
Initial infrastructure layer for micro-service with MongoDB and RabbitMQ support
This change introduces the foundational infrastructure components for a TypeScript micro-service based on clean architecture principles. It adds MongoDB connectivity via Mongoose, including connection factories, retry logic, and status listeners, alongside a base repository that handles CRUD operations, pagination, and MongoDB-specific error mapping. Additionally, it implements a RabbitMQ-based event bus for publishing and subscribing to integration events, complete with connection management and durable queue/exchange configuration. Supporting interfaces and query/pagination models are also included to enable these capabilities.
src/infrastructure · high confidence
Initial microservice template with clean architecture foundation
This change introduces the foundational structure for a TypeScript microservice based on clean architecture principles. It establishes the application layer with a generic Entity model, an abstract Exception base class with specific variants (Validation, Conflict, Repository), and standard port interfaces for Queries, Repositories, and Services. The infrastructure layer is wired via an Inversify-based dependency injection container that configures MongoDB and RabbitMQ connections, alongside a BackgroundService for lifecycle management. On the UI side, an Express controller handles root routing, an ApiExceptionManager translates domain exceptions into standardized HTTP JSON responses, and a Swagger definition file is included to document the API.
(repo-wide) · high confidence
Initial release of the TypeScript micro-service template and activity-tracking example
This change introduces the foundational structure for building TypeScript micro-services based on clean architecture principles. It includes a base template and a concrete example (activity-tracking) that integrates Express.js, MongoDB via Mongoose, and RabbitMQ for messaging. The setup provides a complete development environment with Gulp-based build and watch tasks, TSLint for static analysis, and Swagger UI for API documentation. It also establishes the necessary configuration files (.env.example, .gitignore, tsconfig.json) and includes unit test scaffolding with mocks for the logger, event bus, and MongoDB models to facilitate testing.
(repo-wide) · high confidence
Initial release of the activity-tracking microservice example
This change introduces the initial version of the activity-tracking microservice, built in TypeScript using a clean architecture pattern. It provides a complete Express.js application with InversifyJS dependency injection, featuring domain models for Users and Activities, along with service and repository interfaces. The infrastructure layer includes MongoDB schemas and connections via Mongoose, as well as an event bus integration with RabbitMQ for handling activity save and remove events. The service also includes validation logic for users and activities, error handling middleware, and Swagger API documentation.
example/activity-tracking · high confidence
Test coverage
Added test infrastructure and logger mock for micro-service
Added test configuration for Mocha with TypeScript support and a mock implementation of the custom logger interface to facilitate unit testing of the micro-service.
test · high confidence
Dependencies
Initial TypeScript microservice template added
Added a base project template for building TypeScript microservices, including package.json files for both the root and the example activity-tracking module. This template establishes a clean architecture foundation with dependencies for Express, Inversify for dependency injection, Mongoose for database access, and Winston for logging, along with development tools like Gulp, Mocha, and TSLint.
(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 58 → 53 (-5.2)
- Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 94 → 68 (-25.1)
- Architecture 93 → 78 (-14.8)
- Maturity 78 → 83 (+5.5)
- Readiness 24 → 27 (+2.6)
- Security 100 → 100 (+0.0)
Resolved (9)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — no supported dependency manifest was read
- No exposed public API
- Scanner failed to run — not a clean result
- Test reliability not included
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
New (9)
- 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 installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Scanner failed to run — not a clean result
- Scanner failed to run — not a clean result
- Test reliability not measured — JavaScript/TypeScript suite install refused the lockfile
- Test suite cannot be installed from its own lockfile: example/activity-tracking/
- Test suite cannot be installed from its own lockfile: the repository root
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
nutes-uepb/template-base-ts 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 20 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 49f99666a979c2c8aa6ea3adb7ed52e7c1f91227 — 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.