Skip to content

Getting Started

This guide walks you through running Ephor for the first time and setting up a local development environment.

Prerequisites

For local development you will also need:

  • JDK 21 (for the API)
  • Node.js 22 or later (for the dashboard)

Quick Start

bash
git clone https://github.com/holbein-io/ephor.git
cd ephor
docker compose up --build

This starts:

Authentication is disabled by default in the Docker Compose configuration. A development user with Admin privileges is injected automatically so you can explore the full dashboard immediately.

Local Development

API (Spring Boot)

Start only the database, then run the API with hot-reload:

bash
# Start PostgreSQL
docker compose up postgres -d

# Run the API
SPRING_PROFILES_ACTIVE=local ./gradlew :api:bootRun

The API starts on port 8080. The local profile enables Swagger UI at http://localhost:8080/api/v1/swagger-ui/index.html.

Dashboard (React / Vite)

bash
cd dashboard/app
npm install
npm run dev

The dashboard starts on port 3000 and proxies /api requests to http://localhost:8080.

Running Tests

bash
# API tests
./gradlew :api:test

# Dashboard tests
cd dashboard/app && npm test

Next Steps

Licensed under AGPL v3