Regira packages use a split licensing model designed to stay out of your way: most packages are Apache-2.0, and the handful that fund the project carry a commercial license with a built-in free tier.
| Packages | License | Key needed? |
|---|---|---|
| Everything except the seven below | Apache License 2.0 | Never — these packages contain no license validation and no runtime limits |
Regira.Licensing, Regira.Entities.EFcore, Regira.Entities.DependencyInjection, Regira.Entities.Web, Regira.Entities.Mapping.Mapster, Regira.Entities.Mapping.AutoMapper, Regira.Office.Clients |
Regira Commercial License | Only beyond the free tier |
The front-end library @regira/modules (npm) is also Apache-2.0. The hosted services (services.regira.com) and the MCP server follow the commercial model with rate-limited free tiers.
The free tier applies automatically — no payment, no registration, no key:
| Product | Free-tier limit |
|---|---|
regira.entities |
5 simple + 2 complex entity registrations per application |
regira.services |
5 requests per 60 seconds |
regira.mcp |
30 requests per 60 seconds |
A registration is simple when it is made without custom sort or include type parameters (For<Product>(), For<Product, int, ProductSearchObject>(...)), and complex when it specifies them (For<Order, int, OrderSearchObject, OrderSortBy, OrderIncludes>(...)).
For any given released version, the free tier as shipped in that version remains available without time limit.
A license key removes the free-tier limits. Keys are validated fully offline with an RSA-signed token — no phone-home, no telemetry (the validation code is public: Regira.Licensing).
One key can cover multiple products; when several keys are registered, the best license per product wins (paid always beats free).
Register once, before module setup:
services.UseRegira(configuration); // reads Regira:LicenseKeys from configuration
// or
services.UseRegira(licenseKey); // pass keys explicitly
{
"Regira": {
"LicenseKeys": [ "<your-license-key>" ]
}
}
Questions: b2b@regira.com or the contact form.