🇩🇪 Deutsch: [README.de.md](README.de.md) 🇪🇸 Español: [README.es.md](README.es.md) 🇫🇷 Français: [README.fr.md](README.fr.md) # Telemetry Tracker      [](https://www.npmjs.com/package/@telemetry-tracker/core) [](https://www.npmjs.com/package/@telemetry-tracker/core)
Open-source error tracking, product analytics, and session telemetry.
Lightweight and self-hosted for your own infrastructure—or use the official hosted cloud at telemetry-tracker.com with Stripe billing (EUR).
Overview — KPI cards, event trends, top errors, releases, and performance metrics (light/dark).
Errors — KPIs, trends by type, top errors, and a filterable grouped error table (light/dark).
--- ## Features | Feature | Supported | |---------|-----------| | Errors | ✅ | | Events | ✅ | | Sessions | ✅ | | Performance / Web Vitals | ✅ | | Releases | ✅ | | Global search | ✅ | | Organizations | ✅ | | Projects | ✅ | | API keys | ✅ | | Dashboard | ✅ | | REST API | ✅ | | SDKs (`@telemetry-tracker/*`) | ✅ | | Self-hosted | ✅ | | Hosted cloud ([telemetry-tracker.com](https://telemetry-tracker.com)) | ✅ | | Paid plans (Free / Pro / Business, EUR via Stripe) | ✅ | | Alerting (notifications & channels) | ✅ | | Alert rules (conditions & destinations) | ✅ | | Source maps | ✅ | Alert delivery is in-app notifications, email, HTTPS webhooks, Slack, Discord, Microsoft Teams and Telegram. Slack, Discord and Microsoft Teams take incoming webhook URLs (Teams uses legacy Office 365 MessageCard webhooks). Telegram takes a Bot API `sendMessage` URL plus a chat id. These are not OAuth app installs. The dashboard rule editor currently authors error-count conditions. Self-host setup: [DEPLOYMENT.md](DEPLOYMENT.md) --- ## Why Telemetry Tracker? Telemetry Tracker provides the core building blocks most applications need—error tracking, product analytics events and session telemetry—without the complexity of enterprise observability platforms. - Self-hosted for your own products - Official hosted cloud with EUR billing - Lightweight - Simple APIs - Open source ([MIT](LICENSE)) - Easy to deploy ([DEPLOYMENT.md](DEPLOYMENT.md)) --- ## Architecture ``` Client SDK ↓ ingest (API key) API ←── Dashboard (session auth) ↓ PostgreSQL ``` Apps send errors, events, and sessions to the **API** via `@telemetry-tracker/*`. The **dashboard** reads telemetry through the same API—never directly from the database. --- ## 🚀 Quick Start Get Telemetry Tracker running locally in under 5 minutes. **Prerequisites:** Node.js 18+, pnpm 9, PostgreSQL 16 (Docker works). ```bash git clone https://github.com/Telemetry-Tracker/telemetry-tracker.git cd telemetry-tracker pnpm install docker compose up -d cp apps/api/.env.example apps/api/.env cp apps/dashboard/.env.example apps/dashboard/.env pnpm db:migrate ``` In two terminals: ```bash pnpm dev:api # API → http://localhost:3001 pnpm dev:dashboard # Dashboard → http://localhost:3000 ``` Then: 1. Open **http://localhost:3000**, click **Start tracking**, and create an account. 2. Create an **organization** and **project** in Organization settings. 3. Create an **API key** under Settings → API keys (copy the `tt_live_…` secret once). 4. Instrument your app (see SDK example below) and check **Overview** in the dashboard. --- ## SDK Works with: - ✓ **React / Vue** — `@telemetry-tracker/core` - ✓ **Next.js** — `@telemetry-tracker/next` - ✓ **Node / NestJS** — `@telemetry-tracker/node` - ✓ **Nuxt** — `@telemetry-tracker/core` ([guide](docs/sdk-nuxt.md)) - ✓ **React Native** — `@telemetry-tracker/react-native` - ✓ **Vanilla JS** — `@telemetry-tracker/core` Guides: [core](docs/sdk-core.md) · [Next.js](docs/sdk-next.md) · [Node](docs/sdk-node.md) · [NestJS](docs/sdk-nestjs.md) · [Vue](docs/sdk-vue.md) · [Nuxt](docs/sdk-nuxt.md) · [React Native](docs/sdk-react-native.md) · [Vite plugin](docs/sdk-vite.md) ### Example Install from npm: ```bash pnpm add @telemetry-tracker/core ``` ```ts import { init, trackEvent, trackError } from "@telemetry-tracker/core"; init({ ingestUrl: "http://localhost:3001", app: "my-app", apiKey: process.env.TELEMETRY_API_KEY!, // tt_live_… from dashboard environment: "development", }); trackEvent("user_registered"); trackError(new Error("Something broke")); ``` --- ## 🏗 Project Structure ``` apps/ api/ # Fastify ingest + read API, Prisma, auth, billing dashboard/ # Next.js UI packages/ telemetry-core/ telemetry-node/ telemetry-next/ telemetry-react-native/ telemetry-vite-plugin/ ``` --- ## Built With - [Next.js](https://nextjs.org/) — dashboard - [Fastify](https://fastify.dev/) — API - [Prisma](https://www.prisma.io/) — ORM & migrations - [PostgreSQL](https://www.postgresql.org/) — database - [TypeScript](https://www.typescriptlang.org/) - [pnpm](https://pnpm.io/) — monorepo - [Docker](https://www.docker.com/) — local development (Postgres via `docker compose`; dashboard production image) --- ## Roadmap Shipped capabilities are in **[Features](#features)** above. What follows is **planned and exploring work**—grouped by area, not a release schedule. Items marked *Coming soon* in the dashboard match this list ([#96](https://github.com/Telemetry-Tracker/telemetry-tracker/issues/96)). | Status | Meaning | |--------|---------| | **Planned** | Scoped or tracked in a GitHub issue | | **Exploring** | Labeled *Coming soon* in the product; timing and scope TBD |