The tree was a debranded snapshot of upstream taken around 2026-02-20, and upstream has moved about five months since. This replaces it with upstream master, mechanically re-derived: bin/debrand does the rename, and the pipeline and squashed migrations are restored from the shipped tree. Not a merge. The previous import replaced the tree wholesale in a single commit, so there is no shared content history to merge against. Reproducing the rename on the new tree is what actually converges. What survives: .hanzo/workflows, the Dockerfiles and bin/docker* entrypoints, compose files, LLM.md, and insights/migrations. The squashed initial migration is load-bearing — the live database records it by name, so upstream's ~918 individual migrations cannot come back. Nine products are dropped as unreferenced. Twenty-one more that we do not run are kept anyway because the core app still imports them; unpicking those is a refactor and does not belong in a rebase. This base does not build yet, and the reasons are not in the rename: upstream now wants Python 3.13.13 against our 3.12.12 and Django 5.2 against our 4.2, and the dependency manifests still name upstream packages that we republish under our own names. Those are decisions, not renames.
4.0 KiB
title, sidebar, showTitle
| title | sidebar | showTitle |
|---|---|---|
| Project structure | Docs | true |
Note: This page refers to our main product repository, not our website.
Directory tree
.
├── bin # Shell scripts wrapped by insightscli, the unified developer CLI
├── common # Shared code: Insights SQL parser, ScriptVM, shared UI packages
├── tools # Developer/CI tooling (insightscli framework, insightscli-commands, openapi-codegen, ...)
├── ee # Enterprise platform package features (separate license)
├── frontend # React/TypeScript frontend application
│ └── src
│ └── layout # App layout components (navigation, sidebars)
│ └── lib # Reusable components and utilities
│ └── scenes # Page-specific components
│ └── queries # Query builder components
│ └── toolbar # Insights Toolbar code
├── livestream # Golang service for live events API
├── playwright # End-to-end tests using Playwright
├── nodejs # Node.js service for event ingestion and plugins
├── insights # Django backend application
│ └── api # REST API endpoints
│ └── datastore # Datastore database interactions
│ └── insightsql # InsightsQL query language implementation
│ └── models # Django ORM models
│ └── tasks # Celery background tasks
├── products # Product-specific code (vertical slices)
└── rust # High-performance Rust services
*Selected subdirectories only
Key directories
frontend
The Insights web application, built with React and TypeScript. Uses Kea for state management.
src/lib– Reusable components and utilitiessrc/scenes– Page-specific components organized by featuresrc/queries– Query builder and data visualization componentssrc/toolbar– Code for the Insights Toolbar
insights
The Django backend application. Key subdirectories:
api– REST API endpoints and serializersdatastore– Datastore schema definitions and migrationsinsightsql– Insights SQL query language compiler and executormodels– Django ORM models (PostgreSQL)tasks– Celery background tasks
products
Product-specific code organized as vertical slices. Each product folder contains its own backend (Django app), frontend (React), and optionally shared code. This structure allows features to evolve independently.
See the products README for detailed conventions.
nodejs
Node.js service responsible for:
- Event ingestion and processing
- Running plugins and data pipelines
- Webhook delivery
rust
High-performance Rust services including:
capture– Event capture endpointfeature-flags– Feature flag evaluationcymbal– Error tracking symbolication- Various workers and utilities
common
Shared code used across the codebase:
insightsql_parser– Insights SQL parser (C++)scriptvm– Script virtual machinetailwind– Shared Tailwind configuration
tools
Developer and CI tooling, not imported by runtime code:
insightscli– Developer CLI framework (PyPI-publishable)insightscli-commands– Insights-specific insightscli commandsopenapi-codegen– OpenAPI client/spec generation- (and others — see
tools/)
ee
Enterprise edition licensed features. This directory has a separate license - not MIT. For 100% FOSS code, see Insights/insights-foss.
playwright
End-to-end tests using Playwright. Tests live in the e2e/ subdirectory.
livestream
Golang service powering the live events feed in the Activity tab.