Getting Started

Quick Start

Set up the HanseNexus monorepo for local development

Prerequisites

  • Node.js 22+ — required runtime
  • Bun — package manager (curl -fsSL https://bun.sh/install | bash)
  • 1Password CLI — for secret management (brew install --cask 1password-cli)
  • Docker — optional, only needed for Kubernetes-related work

Clone and Install

git clone git@github.com:Lenoux01/hn-monorepo.git
cd hn-monorepo
bun install

Environment Setup

All dev scripts require a 1Password Service Account token for ephemeral secret injection. Secrets are never written to disk.

# Add to ~/.zshrc (get token from 1Password admin)
export OP_SERVICE_ACCOUNT_TOKEN="ops_..."
source ~/.zshrc

Each app has an .env.op file (committed to git) containing op:// references that are resolved at runtime by op run. Literal values (non-secret dev defaults) pass through unchanged.

Running Apps

Run a single app with secrets injected:

bun dev:lexilink
bun dev:calnexus
bun dev:planex
bun dev:archus
bun dev:nexus-lms
bun dev:elbe-akustik
bun dev:bgs-service
bun dev:portfolio
bun dev:qript

Run all apps simultaneously:

bun dev

Building

Build all apps and packages:

bun run build

Build a single app:

turbo build --filter=calnexus

Testing

Run unit tests (Vitest):

bun test

Run E2E tests (Playwright):

bun test:e2e

Linting and Formatting

Lint the codebase with Biome:

bun run lint

Format code with Biome:

bun run format

Type check all apps and packages:

bun run typecheck

Clean

Remove build artifacts and caches:

bun run clean
HanseNexus 2026