{"repo":"Juudini/saas_core_engine","free":true,"listed":false,"github":"https://github.com/Juudini/saas_core_engine","clone":"git clone https://github.com/Juudini/saas_core_engine.git","description":"Database-per-Tenant multi-tenancy engine for .NET 10 — dynamic per-tenant connection resolution, JWT auth with tenant-claim cross-checking, plan-based feature flags/quotas, per-tenant resilience (circuit breaker + bulkhead), and a zero-downtime migration tool.","language":"C#","stars":11,"topics":["cli","csharp","docker","docker-compose","dockerfile","dotnet-ef","entity-framework-core","healthcheck","jwt","jwt-bearer-tokens"],"license":null,"category":"deployment-docker-iac","readme_excerpt":"SaaS Multi-Tenant Isolation Engine A Database-per-Tenant multi-tenancy building block for .NET 10: dynamic per-tenant connection resolution, JWT authentication with tenant-claim cross-checking, a three-layer tenant metadata cache, plan-based feature flags/quotas, per-tenant resilience (timeout + circuit breaker), and a migration tool with per-tenant failure isolation. See docs/SDD.md for the full design rationale. Solution layout Prerequisites - .NET SDK 10.0+ - Docker Desktop (for docker compose and for the Testcontainers-backed integration tests) - dotnet-ef global tool ( dotnet tool install --global dotnet-ef ), matching the EF Core version pinned in Directory.Packages.props Cold start (verified flow) This is the exact sequence that was run and verified end-to-end for this repository. It runs the API and Tools.DbMigrator on the host via dotnet run , with Postgres and Redis provided by docker-compose — not the containerized api service (see \"Known limitation\" below). Get a dev JWT and call the API (Development-only /api/dev/token endpoint): Enabling the Redis-backed tenant cache locally By default, dotnet run on the host does not set Redis:ConnectionString , so ITenantStore resolves directly against the catalog (correct, just uncached). To exercise the three-layer cache locally against the Redis container started above: Running the tests All tests are expected green with Docker running: 11/11 unit tests, 39/39 integration tests, 0 skipped. Add a new tenant There is no self-","default_branch":null,"files":null,"tree":[],"storefront":"/r/Juudini","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Juudini/saas_core_engine/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}