Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Principle:Helicone Helicone Prerequisites Installation

From Leeroopedia
Knowledge Sources
Domains Local Development, Prerequisites
Last Updated 2026-02-14 00:00 GMT

Overview

Prerequisites installation is the process of ensuring all required runtime environments and tools are available on a developer's machine before starting the Helicone platform locally.

Description

Helicone is a monorepo with multiple services written in different languages and frameworks. To develop locally, a developer needs:

  • Node.js >= 20: Required by both the root monorepo (package.json engines field) and the web frontend (web/package.json engines field). Node 22 is the recommended version per project documentation.
  • Python 3: Needed for running ClickHouse database migrations via the ch_hcone.py CLI tool, which requires the tabulate and yarl pip packages.
  • Docker: The entire infrastructure stack (PostgreSQL, ClickHouse, MinIO, Redis, Mailhog) runs inside Docker containers managed by Docker Compose.
  • Yarn: The monorepo uses Yarn workspaces for dependency management across all JavaScript/TypeScript packages.

Without these prerequisites correctly installed and on the system PATH, subsequent setup steps (infrastructure startup, migrations, service startup) will fail.

Usage

Use this principle at the very start of onboarding to a Helicone development environment, before cloning the repository or running any setup commands. It applies to all developers regardless of which service (web, jawn, worker) they intend to work on.

Theoretical Basis

Modern full-stack platforms typically require multiple language runtimes. The Node Version Manager (NVM) pattern allows developers to maintain multiple Node.js versions side by side, preventing conflicts between projects with different engine requirements. Python virtual environments (venv) serve the same purpose for Python tooling. Docker provides reproducible infrastructure without requiring developers to install databases natively.

The monorepo engines field in package.json enforces a minimum Node.js version at install time:

{
  "engines": {
    "node": ">=20"
  }
}

This constraint is defined in both package.json (root) and web/package.json.

Related Pages

Implemented By

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment