Pmitz is a Java library for subscription management, feature entitlements, and usage limits in multi-tenant applications.
Pmitz helps development teams decide whether a user can access a feature, enforce per-user or per-tenant quotas, and track usage across products, plans, and subscriptions. The project includes core domain modules, limit and subscription verification modules, a remote server/client pair, and a Spring Boot starter for remote enforcement.
- Subscription management and feature gating
- Feature entitlements based on product plans
- Usage quotas and limits for individual users, groups, and subscriptions
- Multi-tenant applications that need configurable access control
- Remote verification with a standalone Spring Boot server or an embeddable starter
Clone the GitHub repository https://github.com/terpomo-io/pmitz.
<dependency>
<groupId>io.terpomo.pmitz</groupId>
<artifactId>pmitz-all</artifactId>
<version>0.9.0</version>
</dependency>dependencies {
implementation 'io.terpomo.pmitz:pmitz-all:0.9.0'
}| Artifact | Purpose |
|---|---|
pmitz-all |
Aggregated core and limits modules |
pmitz-core |
Domain models and base abstractions |
pmitz-limits |
Usage limit verification and tracking |
pmitz-subscriptions |
Subscription management and entitlement verification |
pmitz-remoteserver |
Standalone Spring Boot remote server |
pmitz-remoteclient |
HTTP client for the remote server |
pmitz-spring-boot-starter-remoteserver |
Embeddable Spring Boot starter for remote mode |
To access examples of using Pmitz, refer to the examples folder.
For a more complete walkthrough, see the user guide. For deployment details, see DOCKER.md and Local vs Remote Modes.
- Java 17
Use the issue manager offered with Github. But before submitting a problem, please follow the following guidelines
- Before opening a problem, check if the problem has not already been reported.
- Please enter as much information as possible about the problem experienced in the problem sheet.
- If you include code in the problem description, please enclose it between two ``` lines to enhance code formatting
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
See our page explaining how to contribute (CONTRIBUTING.md)
Pmitz is Open Source software released under the Apache 2.0 license