feat(templates): add service language template management

Add normalized service and template catalogs, scoped administration, migration, validation, and regression coverage.

Ref: IT-1601
This commit is contained in:
2026-10-17 22:02:43 +03:00
parent 36810dc5f1
commit 81654c0d33
73 changed files with 4061 additions and 820 deletions
+13 -1
View File
@@ -4,9 +4,21 @@ Production image references now use `registry.hrynco.com`, preserving the existi
## Documentation
- [Email template definitions and service languages](docs/email-template-localizations.md)
- [ItemTracker outbox email consumer](docs/itemtracker-outbox-email-consumer.md)
- [Shared Notification Service Kubernetes package](docker/kubernetes/shared-notification/README.md)
## Windows host development
For the owner's host development workflow, run Web in Rider with the Development
profile (`localhost:5433` PostgreSQL, HTTP `localhost:5188`) and keep Docker Web
stopped. Infrastructure can remain in the existing Docker stack. Web does not apply
schema migrations automatically. The owner's local database is prepared only when
they choose to run the current Migrator with an explicit connection setting.
See [template migration and local setup](docs/email-template-localizations.md) for
backup, conflict, compatibility and validation details. The full Docker installation
below is a separate complete-stack workflow.
## Development environment
The development Docker Compose stack runs PostgreSQL, RabbitMQ, database migrations,
@@ -58,7 +70,7 @@ docker compose --env-file docker/environments/.env.local `
After startup, the main development endpoints are:
- Notification Service admin: `http://localhost:5200/admin/channels`
- Notification templates: `http://localhost:5200/admin/templates`
- Services and their notification templates: `http://localhost:5200/admin/services`
- RabbitMQ management: `http://localhost:15672` (`guest` / `guest`)
- Mailpit inbox: `http://localhost:8025`
- Seq logs: `http://localhost:5342`