Awesome
<p align="center"> <a href="https://openmeter.io"> <img src="assets/logo.png" width="100" alt="OpenMeter logo" /> </a> <h1 align="center"> OpenMeter </h1> </p>OpenMeter provides flexible Billing and Metering for AI and DevTool companies. It also includes real-time insights and usage limit enforcement.
Learn more about OpenMeter at https://openmeter.io.
Try It
Get started with the latest version of OpenMeter in minutes.
Local
git clone git@github.com:openmeterio/openmeter.git
cd openmeter/quickstart
docker compose up -d
Check out the quickstart guide for a 5-minute overview and demo of OpenMeter.
Cloud
Sign up for a free account and start metering your usage in the cloud.
[!TIP] Check out how OpenMeter Cloud compares with the self-hosted version in our comparison guide.
Deploy
Deploy OpenMeter to your Kubernetes cluster using our Helm chart.
Links
Community
To engage with our community, you can use the following resources:
- Discord - Get support or discuss the project.
- Contributing to OpenMeter - Start here if you want to contribute.
- Code of Conduct - Our community guidelines.
- Adopters - Companies already using OpenMeter.
- Blog - Stay up-to-date.
Examples
See our examples to learn about common OpenMeter use-cases.
- Metering Kubernetes Pod Execution Time
- Usage Based Billing with Stripe (Go, Node)
- Metering based on logs
API
OpenMeter exposes a REST API for integrations.
Client SDKs
Currently, we offer the following Client SDKs:
In cases where no specific SDK is available for your preferred programming language, you can utilize the OpenAPI definition. Please raise a GitHub issue to request SDK support in other languages.
Development
For an optimal developer experience, it is recommended to install Nix and direnv.
<details><summary><i>Installing Nix and direnv</i></summary><br>Note: These are instructions that SHOULD work in most cases. Consult the links above for the official instructions for your OS.
Install Nix:
sh <(curl -L https://nixos.org/nix/install) --daemon
Consult the installation instructions to install direnv using your package manager.
On MacOS:
brew install direnv
Install from binary builds:
curl -sfL https://direnv.net/install.sh | bash
The last step is to configure your shell to use direnv. For example for bash, add the following lines at the end of your ~/.bashrc
:
eval "\$(direnv hook bash)"
Then restart the shell.
For other shells, see https://direnv.net/docs/hook.html.
MacOS specific instructions
Nix may stop working after a MacOS upgrade. If it does, follow these instructions.
<hr> </details>Run the dependencies:
make up
Run OpenMeter:
make run
Run tests:
make test
Run linters:
make lint
Tools
Run Docker Compose with dev profile to enable UI for Kafka and ClickHouse:
docker compose --profile dev up
If you are seeing ghcr.io denied error, login to ghcr.io using a GitHub personal access token:
docker login ghcr.io
Roadmap
Visit our website at https://openmeter.io for our public roadmap.
License
The project is licensed under the Apache 2.0 License.