Skip to content

Latest commit

 

History

History
124 lines (81 loc) · 2.7 KB

File metadata and controls

124 lines (81 loc) · 2.7 KB

Getting Started

This guide gets you from zero to a running Open Schedule instance in under 10 minutes.


Prerequisites

Tool Minimum version Notes
Java 25 Eclipse Temurin recommended
Maven 3.9+ Or use the included ./mvnw wrapper
Docker 24+ With Docker Compose v2
Git any

1. Clone the repository

git clone https://github.com/alphnology/open-schedule.git
cd open-schedule

2. Configure the environment

cp .env.dist .env

For local development the defaults in .env.dist work out of the box — Mailpit handles email and MinIO handles storage with known credentials. You do not need to edit .env to start developing.

See configuration.md for the full variable reference.


3. Start infrastructure services

docker compose up -d

This starts:

  • PostgreSQL 18 on port 5433
  • Mailpit on ports 1026 (SMTP) and 8026 (web UI)
  • MinIO on port 9000 (S3 API)
  • MinIO Console on port 9001

Wait ~10 seconds for PostgreSQL to be ready. Check status with:

docker compose ps

4. Run the application

Option A — Maven (recommended for dev)

./mvnw spring-boot:run -Pdev

Vaadin hot-reload is active. Frontend and backend changes are reflected without restarting.

Option B — IDE

Open the project in IntelliJ IDEA or VS Code and run Application.java with the dev Spring profile active:

-Dspring.profiles.active=dev

5. Access the application

URL Description
http://localhost:51675 Application
http://localhost:8026 Mailpit — all outbound emails appear here
http://localhost:9000 MinIO S3 API
http://localhost:9001 MinIO Console

Default credentials

The dev profile loads seed data from src/main/resources/db/migration/dev/V9.9.9__dev_data.sql.

Check that file for the default admin username and password. It is safe to use these locally; never deploy dev seed data to production.


Useful commands

# Stop all services
docker compose down

# Stop services and remove volumes (full reset)
docker compose down -v

# View application logs (when running via docker-compose-dev.yml)
docker compose logs -f app-open-schedule

# Build production JAR
./mvnw clean package -DskipTests -Pproduction

# Run all tests
./mvnw test

Next steps