ShipAI Docs
Getting Started

Setup

Install, bootstrap, and run the AI Assistant monorepo locally.

Prerequisites

  • Bun 1.1.26+
  • Docker Desktop

Recommended path

Use bun run setup for a reliable first boot. It validates tooling, creates missing env files, starts Docker, waits for health, runs migrations, and seeds baseline data.

Bootstrap Options

bun run setup

Use this first on fresh machines.

bun install
cp .env.example apps/app/.env
cp .env.example apps/admin/.env
cp .env.example apps/web/.env
docker compose up -d
bun db:migrate
bun db:seed
bun dev

Use this when you want explicit control over each phase.

Setup Flow

Create app env files

cp .env.example apps/app/.env
cp .env.example apps/admin/.env
cp .env.example apps/web/.env

Start infrastructure

docker compose up -d

Apply schema and seed data

bun db:migrate
bun db:seed

Start apps

bun dev

Access URLs (Local)

  • App: http://localhost:3000
  • Web: http://localhost:3001
  • Admin: http://localhost:3002
  • MailDev UI: http://localhost:1080
  • MinIO Console: http://localhost:4001

Development Auth Test Credentials

For local OTP testing without email verification:

  • Email: test@example.com
  • OTP: 123456

Verify Service Health

bun health
bun health:wait

Minimal Development Mode (Optional)

If you only need core features:

docker compose up postgres redis minio createbuckets maildev -d

Set in apps/app/.env:

FEATURE_SEARCH_ENABLED=false
FEATURE_MEMORY_ENABLED=false
DEVELOPMENT_MODE=true

Minimal mode tradeoff

Minimal mode keeps auth/chat/uploads fast for local iteration, but intentionally disables search and memory paths.

Common Startup Commands

bun dev
bun dev:app
bun dev:admin
bun dev:web
bun dev:worker

Setup Checklist

  • bun install completed without errors
  • .env files exist in apps/app, apps/admin, and apps/web
  • docker compose ps shows required services running
  • bun db:migrate succeeds
  • bun dev starts and app loads on localhost:3000

On this page