openmeter icon indicating copy to clipboard operation
openmeter copied to clipboard

Cloud Metering for AI, Billing and FinOps. Collect and aggregate millions of usage events in real-time.

OpenMeter logo

OpenMeter

GitHub Workflow Status OpenSSF Scorecard

OpenMeter is a Real-Time and Scalable Usage Metering for AI, Usage-Based Billing, Infrastructure, and IoT use-cases.

Learn more about OpenMeter at https://openmeter.io.

Quickstart

Check out the quickstart guide for a 5-minute overview and demo of OpenMeter.

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:

  • Node.js
  • Python
  • Go
  • Web

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.

Installing Nix and direnv

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.


Run the dependencies:

make up

Run OpenMeter:

make run

Run tests:

make test

Run linters:

make lint

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