Home

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>

GitHub Release GitHub Workflow Status OpenSSF Scorecard Go Report Card GitHub Repo stars X (formerly Twitter) Follow

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:

Examples

See our examples to learn about common OpenMeter use-cases.

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.

FOSSA Status