Installation

From clone to login,
in a few commands.

Set up a local development environment for billetsys with PostgreSQL and run it in Quarkus dev mode. You'll need Java 25, Maven, PostgreSQL, and Git.

01

Requirements

Make sure the following tools are available before you begin:

# required
Java 25 · Maven · PostgreSQL · Git

A container engine — Podman or Docker with Compose — is recommended for the captcha support service.

02

Get the source code

Clone the repository and enter the project directory:

git clone https://github.com/mnemosyne-systems/billetsys.git
cd billetsys
03

Set up PostgreSQL

The default local configuration expects a database named ticketdb and a user ticketdb with password ticketdb. Create them:

createuser -P ticketdb
createdb -E UTF8 -O ticketdb ticketdb

billetsys connects to PostgreSQL on localhost:5432 by default. Override with DB_HOST and DB_PORT if needed. To start fresh, dropdb ticketdb then recreate it.

04

Start support services

billetsys uses a local CAP service for captcha protection on the password-reset flow. Start it before the application:

make platform

This detects Podman Compose or Docker Compose and starts the containers in docker-compose.yml. If neither is installed, the step is skipped with a warning.

05

Start billetsys

Start the application in Quarkus development mode:

mvn clean quarkus:dev
 
listening on http://localhost:8080
https://localhost:8443

On startup, billetsys connects to PostgreSQL, updates the schema, and loads bootstrap data. In dev mode, outgoing email is mocked so you can test notification flows without a mail server.

06

First login

The seeded development users let you explore every role immediately:

Additional seeded accounts include user2, userb, superuser2, tam2, and support2. See the Getting Started guide for the full list.

Read Getting Started View on GitHub