Bilingual Navigation: Versión en Español
Evolith E2E Architecture Framework - UMS official satellite product - click to enlarge
UMS is a modular monolith for identity, authorization, configuration, approvals, compliance, IGA, and audit.
Built on .NET 10, PostgreSQL, EF Core through Npgsql, React 18, TypeScript, and Nx.
It specializes the Evolith corporate architecture reference for a product-grade user management system.
Inherit the standard, specialize the product.
Primary entry points
- Product Vision - strategy, product goals, and business positioning.
- Architecture Portal - architectural overview, ADRs, blueprints, and applied reference material.
- Domain Model - bounded contexts, aggregates, entities, and domain rules.
- Functional Stories - business-readable product backlog.
- Master Index - complete documentation navigation.
- Evolith Upstream - corporate reference base inherited by UMS.
Getting started by role
- Architects: start with Architecture Portal, then review ADR Registry and Traceability Matrix.
- Backend developers: start with API .NET Reference, then review Domain Aggregates and .NET SDK.
- Frontend developers: start with Frontend Clean Architecture ADR, then review TypeScript SDK and State Management ADR.
- Product and PM: start with Product Vision, then review Scope, Objectives, and Gap Tracker.
- DevOps and SRE: start with Infrastructure Plan, then review Operations Portal, Runbooks, and Metrics.
- AI contributors: start with AGENTS.md, then review Documentation Control Agents and ADR Template.
Open the lifecycle area you are working in. Each section groups the documents and repository anchors that support its gate.
Phase 00 - Product and Governance
Phase 01 - Requirements
Phase 02 - Design and Architecture
Phase 03 - Construction
Phase 04 - Validation and QA
Phase 05 - Delivery and Operations
Architecture, domain, and product reference
UMS and Evolith inheritance
- UMS inherits reusable architecture standards, governance rules, ADR patterns, and documentation practices from Evolith.
- UMS keeps product-specific implementation, bounded contexts, schemas, seed strategy, and runtime behavior in this repository.
- Product ADRs may be promoted upstream when UMS provides executable evidence that the decision is reusable across products.
- Multi-tenancy is enforced primarily at the application layer. PostgreSQL policies, constraints, schema ownership, and row-level security are secondary infrastructure failsafes.
Local development commands
Run technical commands from src/ unless the command explicitly targets the backend solution.
# Install frontend dependencies
cd src
npm install
# Frontend: React 18 and Vite
npx nx run app-web:dev
# Backend: .NET 10
cd apps/ums.api
dotnet build
dotnet run
# Backend tests
dotnet testDocumentation validation
# From the repository root
python3 .bmad-core/scripts/cleanup_markdown_encoding.py
# From src/, when Context7 setup is needed
cd src
npx ctx7 setupDocumentation changes must keep English and Spanish artifacts synchronized, preserve UTF-8 integrity, and avoid decorative icons or non-standard Markdown characters.
Before contributing, read:
- AGENTS.md - agent rules and repository conventions.
- Standards - engineering and documentation standards.
- ADR Template - how to propose a decision.
- Child Repository Inheritance Guide - how UMS inherits from Evolith.
This repository is proprietary unless a separate license file states otherwise.