Quickstart
This page walks the whole path from install to a dashboard showing live data. Everything runs locally: the CLI downloads and supervises a ClickHouse database, an OpenTelemetry collector, and the app server on your machine — no external services required.
Prerequisites
- Node.js 22.15 or newer, and a terminal.
- macOS or Linux, on arm64 or x64. The CLI downloads the ClickHouse and OpenTelemetry collector binaries for you, and those are the platforms they are published for; on anything else
noemata upreports the services it cannot install. Windows is not supported — use WSL. Autostart is macOS-only. - Outbound HTTPS to
github.comandbuilds.clickhouse.comfor the first run, which is when those binaries are fetched into~/.noemata/binand~/.clickhouse/versions. Behind a proxy, setNODE_USE_ENV_PROXY=1alongsideHTTPS_PROXYso Node honours it, and pointNODE_EXTRA_CA_CERTSat your CA bundle if the proxy terminates TLS. - Optional: Claude Code, if you want to control your agent from the app.
Install
npm install -g noemata@canarynoemata has no stable release yet, so @canary is the tag to install. This puts the noemata command on your PATH.
Create a project
In an empty directory, run:
noemata initThis scaffolds a project and opens a short setup wizard, which asks you to:
- Pick a database — a managed local ClickHouse (the default, downloaded and supervised for you) or an external one you already run.
- Pick a TLS mode —
mkcert(a locally-trusted certificate, the smoothest local experience),self-signed, ornone. - Install integrations — Noemata auto-detects software on your machine (for example the Claude Code binary) and offers to wire up telemetry collection and dashboards for it.
- Allow edits outside the repository — Some integrations will update files outside the repository this project lives in. E.g., Claude needs to be configured to send telemetry to Noemata’s endpoint. The wizard lists the files it would write and asks once; declining records
external_edits: falseand keeps every write inside the repository. Declining external edits might mean your integration doesn’t work the way you’d expect it to. - Install the agent skills — when the project is a subdirectory of a repo, the skills that teach coding agents to drive Noemata install at its root, shared by every project in it. The wizard names the directories and asks; declining records
skills: false. - Pick an agent for the panel — when a coding agent is installed, you can use it through the agent panel.
noemata config re-opens this wizard later if you want to change any of it.
Start the stack
noemata upnoemata up starts the services it owns — ClickHouse, the collector, and the app server — and reconciles your integrations and installed packs on every run. It also runs the wizard itself on the very first run, so you can skip noemata init and go straight here. Running bare noemata is equivalent to noemata up.
Installed packs are managed by default: reinstalled on each run, so upgrades come for free. Set integrations.managed to false in noemata.json to take ownership of them and version-control them in git instead (see Ownership & version control).
The app is by default served at https://localhost:3210 (over HTTPS when TLS is mkcert or self-signed), and opens in your browser automatically when you run from a terminal.
Two packs are always installed: @noemata (Noemata’s own content plus these docs, available in-app under @frames/@noemata/docs/) and @opentelemetry — the OpenTelemetry semantic layer and dashboards in one pack (services, traces, logs, and more), which is used by any integration that uses OpenTelemetry data.
Open a dashboard
Open the nav bar or press Cmd + K to navigate to an existing frame. Note that it might take a few seconds for data to come in after launching Noemata.
Get live data flowing
If you’re using integrations, they’ll automatically configure applications they monitor to send data to Noemata’s endpoint. Some applications you own will require you to configure Noemata as the OTLP endpoint. Noemata usually runs its collector at the 4318 (http) and 4317 (grpc) ports. Your application’s documentation or the OpenTelemetry website can help you configure Noemata as the OTLP endpoint for your app, but for many SDKs, setting OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 is enough. See Send telemetry.
Noemata by default will also send telemetry from the app to its collector, and you’ll be able to monitor the browser, server, the collector and the database in Noemata itself.
Useful commands
noemata status # service healthnoemata validate # check frames rendernoemata down # stop the stackNext
- Workspace — projects, the file store, and how it syncs.
- Integrations — how auto-detected tools become telemetry and dashboards.
- Connect your data — bring your own ClickHouse or OTLP source.
- Authoring frames — build your own dashboards.
- CLI commands — the full command reference.