Skip to content

Getting started

Try it in 5 minutes (Docker)

The fastest way to a clickable environment — no SDK, no database to install. Starts Hodor + SQL Server with a pre-seeded demo source (HodorDemo), a target warehouse (HodorDW) and two example pipelines ready to run:

docker compose --env-file demo/.env -f docker-compose.yml -f docker-compose.demo.yml up --build
# → http://localhost:5200  (log in: admin / Admin1234!)

--env-file demo/.env supplies the demo secrets. The base compose file requires SA_PASSWORD, JWT_KEY and HODOR_ADMIN_PASSWORD with no defaults. Demo only.

Open Workflows, run Demo_Load_DimCustomer, and watch the steps live.


Build from source

Prerequisites

  • .NET 10 SDK
  • Node.js 22+ and npm
  • SQL Server or PostgreSQL (metadata database, source and/or target)
  • Python 3 (optional, for Python scripts inside pipelines)

Build and run locally

# 1. Build the Angular app
cd hodor-web
npm install
npm run build        # output: hodor-web/dist/hodor-web/browser/

# 2. Start the API (also serves the Angular app)
cd ../Hodor.Api
dotnet run
# → http://localhost:5200

For frontend development with hot reload:

cd hodor-web
npm start            # ng serve with proxy to localhost:5200

Required environment variables

Variable Description
Jwt__Key Secret key for JWT signing. At least 32 characters.
Hodor__DefaultAdmin__Password Password for the built-in admin account created on first start.
Database__Provider Postgres or SqlServer.
Database__ConnectionString Connection string to the chosen database.

These can alternatively be set in Hodor.Api/appsettings.Development.json during local development — that file is not tracked in version control.

Configuration

// Hodor.Api/appsettings.json
{
  "Hodor": {
    "PipelinesFolder": "/pipelines"
  },
  "Database": {
    "Provider": "SqlServer",
    "ConnectionString": "Server=...;Database=HodorMeta;..."
  }
}

Environment variables: HODOR__PIPELINESFOLDER, DATABASE__PROVIDER, DATABASE__CONNECTIONSTRING.

Windows authentication

Use Windows authentication (Trusted_Connection=True) for on-prem SQL Server — .hodor files will then contain no secrets and can be checked into git safely.