Serverless registration app for ijug events
  • Java 77.3%
  • HTML 22.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tobias Frech 4f12cb1472
All checks were successful
Docker Build / build (push) Successful in 2m7s
CI Build / build (push) Successful in 1m37s
automatisiert Konvertierung von adoc nach md mit downdoc
2026-09-24 15:31:36 +02:00
.forgejo/workflows build: move to Java 25, the current LTS 2026-09-21 21:40:14 +02:00
.github build: move to Java 25, the current LTS 2026-09-21 21:40:14 +02:00
.mvn/wrapper chore(deps): bump org.apache.maven:apache-maven from 3.9.12 to 3.9.16 (#43) 2026-08-19 21:49:08 +02:00
.run v3.0 (#10) 2026-05-31 12:42:52 +02:00
docs automatisiert Konvertierung von adoc nach md mit downdoc 2026-09-24 15:31:36 +02:00
misc refactor: rename the webinar page to meeting 2026-09-23 20:26:03 +02:00
src fix(meeting): show "nicht verfügbar" instead of 500 while no link is stored 2026-09-23 20:26:03 +02:00
.editorconfig upgrade to Quarkus 1.8 and remove all the custom https/ssl handling stuff/resources (this works now ootb) 2020-09-22 17:56:03 +02:00
.gitignore update .gitignore 2026-09-21 21:48:14 +02:00
CLAUDE.md docs: follow the rename from webinar to meeting 2026-09-23 20:26:03 +02:00
docker-compose.yml rename the docker image name after repo move 2026-06-12 12:01:57 +02:00
mvnw maven wrapper updated 2026-05-31 14:27:19 +02:00
mvnw.cmd chore(deps): bump org.apache.maven:apache-maven from 3.9.12 to 3.9.16 (#43) 2026-08-19 21:49:08 +02:00
pom.xml build: move to Java 25, the current LTS 2026-09-21 21:40:14 +02:00
README.adoc build: move to Java 25, the current LTS 2026-09-21 21:40:14 +02:00

= JUG Registration App
:icons: font

https://quarkus.io[Quarkus]-based application.

== Usage / Integration Configuration

A detailed handbook for JUG orga teams -- embedding into your own website, events file,
e-mails and admin area -- is available (in German) in
link:docs/handbuch.adoc[docs/handbuch.adoc].

== Development

=== Prerequisites

* JDK 25+
* IDE
* Maven 3.9+ _(Maven wrapper is included)_
* Docker (for local development using the Quarkus DevServices)

=== Development with default `dev` profile

For local development, simply power up the Quarkus application

* either by using the link:.run/ijug-registration.run.xml[provided IntelliJ run configuration]
* or by executing https://quarkus.io/guides/maven-tooling#development-mode[Quarkus Development Mode] on the command line (terminal): `mvn compile quarkus:dev`

This starts Quarkus in `dev` profile mode and also starts up all required external systems as devservices, like the PostgreSQL database, Mailpit smtp dev server, Keycloak for authentication.

* (Optional) Build application: `mvn clean package`

TIP: You can now change classes, configurations and other resources on the fly, and Quarkus will automatically reload on the next call.

=== Run HTTP requests to test registration

* Registration: http://localhost:8080/registration/test?eventId=2026-12-31&opensBeforeInMonths=8
* Admin: http://localhost:8080/admin/test/events (User: alice/alice)
* Mailpit: http://localhost:8080/q/dev-ui/quarkus-mailpit/mailpit-ui

For runnint http requests manually, see link:misc/run-http-requests-manually.adoc[here].

== Build

There is a link:.github/workflows/docker.yml[GH action] to build and push a (multi-platform arm64/amd64) Docker image to `ghcr.io/ijug-ev/registration:<version>`.

This action runs either

* on pushs to `main` branch, then the image version tag will be `latest`
* on git tag pushes in format `v.1.2.3`, then the image version tag will be `1.2.3`

== Deployment

An example Docker Compose file is provided link:docker-compose.yml[here]:

[source,yaml]
----
include::docker-compose.yml[]
----

TIP: The production app should be available directly under https://registration.ijug.eu