Factory.ai

Open-Source Wikis

/

Grafana

/

Overview

grafana/grafana

Grafana

Grafana is an open-source observability platform for querying, visualizing, and alerting on time-series data — metrics, logs, and traces — from any data source. The repository is a large monorepo combining a Go backend, a TypeScript/React frontend, a set of shared @grafana/* npm packages, and dozens of built-in datasource and panel plugins.

What this codebase contains

  • A Go HTTP server (pkg/) that exposes the REST/gRPC API, persists user data, evaluates alert rules, talks to datasources, and serves the frontend bundle. Entry point: pkg/cmd/grafana/main.go.
  • A TypeScript single-page application (public/app/) that renders dashboards, the Explore view, the alerting UI, and admin pages. Entry point: public/app/index.ts.
  • Shared npm packages (packages/grafana-*) published to @grafana/data, @grafana/ui, @grafana/runtime, @grafana/schema, etc. — used both inside this repo and by external plugin authors.
  • Backend "apps" (apps/) — standalone Go modules built on the Grafana App SDK that provide Kubernetes-style API resources for dashboards, folders, alerting, IAM, provisioning, etc.
  • Built-in plugins (public/app/plugins/) — datasource (Prometheus, Loki, Tempo, CloudWatch, MySQL, …) and panel (Time Series, Stat, Table, …) plugins shipped with Grafana.
  • Data backends (pkg/tsdb/) — Go-side query backends paired with the frontend datasource plugins.

Where to start

Audience Start with
Newcomer to the codebase Architecture and Getting started
Reading dashboards & panels code Frontend overview and Dashboards
Reading API/server code Backend overview and API layer
Building or porting a plugin Built-in plugins and Packages
Investigating an alerting issue Alerting (backend)
Configuration and ops Configuration reference, Deployment

Project facts

  • Language mix: Go (backend, plugin host, CLI), TypeScript + React (frontend), CUE (schemas in kinds/), some shell, Python, Make.
  • Build system: Yarn 4 workspaces + Nx for the JS side, Go workspaces (go.work) and Make for the Go side, Webpack for bundling.
  • License: AGPL-3.0-only with Apache-2.0 exceptions documented in LICENSING.md.
  • First commit: January 2013. Active development with thousands of contributors.

See by the numbers for a quantitative snapshot and lore for the codebase's history.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Overview – Grafana wiki | Factory