explaingit

jitsucom/jitsu

4,762TypeScriptAudience · dataComplexity · 4/5LicenseSetup · moderate

TLDR

A self-hosted open-source data pipeline that captures real-time events from your app and routes them to data warehouses like BigQuery or PostgreSQL, as a Segment alternative you control.

Mindmap

mindmap
  root((Jitsu))
    What it does
      Capture app events
      Route to warehouse
      Pull API data
    Destinations
      PostgreSQL
      BigQuery
      Redshift
      ClickHouse
    Deploy options
      Docker Compose
      Heroku one-click
      Hosted cloud tier
    Audience
      Data engineers
      Privacy-first teams
      Segment alternatives
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Capture user click and signup events from your web app and store them in BigQuery for analysis without paying per-event fees.

USE CASE 2

Replace Segment with a self-hosted pipeline so your event data never passes through a third-party company's servers.

USE CASE 3

Pull data from third-party APIs on a schedule and load it automatically into your data warehouse.

USE CASE 4

Set up real-time event tracking for free using the hosted cloud tier up to 250,000 events per month.

Tech stack

TypeScriptGoPostgreSQLBigQueryClickHouseDocker

Getting it running

Difficulty · moderate Time to first run · 1h+

Requires Docker Compose and a running data warehouse destination (PostgreSQL, BigQuery, etc.) to receive events.

Apache-style open-source license, free to use commercially with attribution requirements.

In plain English

Jitsu is an open-source tool for collecting data from your applications and sending it to a data warehouse. If your app generates events when users click buttons, sign up, or complete purchases, Jitsu can capture those events in real time and route them to storage systems like PostgreSQL, BigQuery, Redshift, or ClickHouse. It can also pull data from third-party APIs on a schedule and store the results in the same way. The project positions itself as a self-hosted alternative to Segment, a popular commercial data pipeline service. The key difference is that you run Jitsu on your own infrastructure, so your event data never passes through a third-party company's servers. This can matter for teams with privacy requirements or those who want to avoid per-event fees that add up at scale. Getting it running is meant to be straightforward. You can deploy it with a single click to Heroku or bring it up locally with Docker Compose using a few commands. Once running, a web-based configurator at localhost:8000/configurator lets you connect data sources and set up destinations without editing config files manually. For teams that do not want to self-host, the company also offers a hosted cloud version with a free tier up to 250,000 events per month. The README points to documentation covering deployment options, YAML-based configuration, geographic data enrichment using an external database called MaxMind, and scaling the service across multiple machines. The project is written in TypeScript and Go and is open source under an Apache-style license. A Slack community and a support email address are available for questions.

Copy-paste prompts

Prompt 1
Help me deploy Jitsu with Docker Compose and configure it to receive events from my React app and send them to a PostgreSQL database.
Prompt 2
Show me how to set up Jitsu to pull data from a REST API on a daily schedule and load the results into BigQuery.
Prompt 3
Help me migrate from Segment to self-hosted Jitsu: what changes do I need to make to my event tracking JavaScript snippet?
Prompt 4
Configure geographic data enrichment in Jitsu using MaxMind so every event record includes the user's country and city.
Open on GitHub → Explain another repo

← jitsucom on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.