Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


Demo of using Quarkus with server-side templates via its Qute extension an Unpoly for client-side enhancements.

If you want to learn more about Quarkus, please visit its website: .

Database set-up

This project uses Postgres which can be started via Docker Compose:

cd compose
docker-compose up

A database "tododb", a user and schema are all configured automatically, so no further setup is needed. If the database doesn't show up in PGAdmin, the definition can be imported like this:

docker exec -it pgadmin_container python --load-servers /pgadmin4/servers.json --user

To browse the database, go to http://localhost:5050/browser/ and log in with user name "" and password "admin". To connect to the "tododb" database, use "todopw" as password when requested.


This project uses Unpoly for a smoother user experience: links and form submissions will be intercepted and executed as AJAX requests, avoiding a full page reload by replacing page fragments.

If JavaScript is disabled, the application gracefully falls back to the regular mode and experience of server-side rendered applications.

Running the application in dev mode

You can run your application in dev mode that enables live coding using:

./mvnw quarkus:dev

Packaging and running the application

The application is packageable using ./mvnw package. It produces the executable quarkus-qute-1.0.0-SNAPSHOT-runner.jar file in /target directory. Be aware that it’s not an über-jar as the dependencies are copied into the target/lib directory.

The application is now runnable using java -jar target/quarkus-qute-1.0.0-SNAPSHOT-runner.jar.

Creating a native executable

You can create a native executable using: ./mvnw package -Pnative.

Or you can use Docker to build the native executable using: ./mvnw package -Pnative -Dquarkus.native.container-build=true.

You can then execute your binary: ./target/quarkus-qute-1.0.0-SNAPSHOT-runner

If you want to learn more about building native executables, please consult .

Running the native executable via Docker

docker build -f src/main/docker/Dockerfile.native -t quarkus-examples/quarkus-qute .
docker run -i --rm -p 8080:8080 --network todo-network -e QUARKUS_DATASOURCE_URL=jdbc:postgresql://todo-db:5432/tododb quarkus-examples/quarkus-qute
You can’t perform that action at this time.