This repository contains a set of Quickstarts for the Quarkus framework. Each of them have a Getting started guide.
To compile and run these demos you will need:
See the Building a Native Executable guide for help setting up your environment.
These quickstart by default currently uses the Quarkus core BOM.
If you want to use an alternative BOM when building the quickstart you can override the quarkus.platform.*
properties. The following example shows how to set quarkus.platform.artifact-id
to use the universe-bom.
mvn -Dquarkus.platform.artifact-id=quarkus-universe-bom clean install
See CONTRIBUTING for how to build these examples.
Getting Started: Application creation, Rest endpoint, Dependency Injection, Test, Packaging
Getting Started - Reactive: Getting started with Reactive and Quarkus
Getting Started - Async: Illustrate how to use Uni
to handle asynchronous actions
Getting Started - Knative: Deployment of the Knative service to Kubernetes and/or OpenShift
Getting Started - Testing: How to test your application
Application Configuration: How to configure your application
Startup and Shutdown actions: Explains how to execute code when the application starts and stops
Getting Started - Reactive CRUD: Reactive REST API with a (reactive) database backend
AMQP: How to interact with AMQP using MicroProfile reactive messaging
Amazon DynamoDB: How to connect to an Amazon DynamoDB datastore
Amazon KMS: How to connect to an Amazon KMS (Key Management Service)
Amazon SES: How to connect to an Amazon SES (Simple Email Service)
Amazon S3: How to connect to an Amazon S3 cloud storage
Amazon SNS: How to connect to an Amazon SNS (Simple Messaging Service)
Amazon SQS: How to connect to an Amazon SQS (Simple Queue Service)
Amazon SQS Connector: How to connect to an Amazon SQS (Simple Queue Service) using the Reactive Messaging connector
Amazon SSM: How to connect to Amazon SSM (Simple Systems Manager)
AWT Graphics, ImageIO: How to create a service that watermarks images and draws text
Hibernate Reactive Panache and RESTEasy Reactive: Exposing a CRUD service over REST using Hibernate Reactive and Panache to connect to a PostgreSQL database
Hibernate Reactive and RESTEasy: Exposing a CRUD service over REST using Hibernate Reactive to connect to a PostgreSQL database
Hibernate Reactive and Vert.x Web: Exposing a CRUD service with Reactive Routes using Hibernate Reactive to connect to a PostgreSQL database
Hibernate ORM and RESTEasy: Exposing a CRUD service over REST using Hibernate ORM to connect to a PostgreSQL database
Hibernate ORM with Panache and RESTEasy: Exposing a CRUD service over REST using Panache to connect to a PostgreSQL database
Hibernate ORM with Panache and RESTEasy in Kotlin: Exposing a CRUD service over REST using Panache and kotlin to connect to a PostgreSQL database
Hibernate ORM REST Data with Panache: Automatically generate the CRUD endpoints for your entities and repositories using Hibernate ORM with Panache.
Hibernate ORM Multitenancy: Multitenant CRUD service over REST using Hibernate ORM to connect to a PostgreSQL database (schema or database approach)
Hibernate Search + Elasticsearch: Index your Hibernate entities in Elasticsearch to get full text search
Infinispan Client: How to use Infinispan Client. Covers creating caches and simple get/put
Artemis JMS: How to use the Artemis JMS extension
Kafka: Use MicroProfile Reactive Messaging to interact with Apache Kafka
Kafka and Hibernate with Panache: Shows how to combine Kafka and (classic) Hibernate with Panache
Kafka and Hibernate Reactive with Panache: Shows how to combine Kafka and Hibernate Reactive with Panache
Kafka Streams: Use the Apache Kafka Streams API to implement stream processing applications based on Apache Kafka
Bare Kafka: How to use the Apache Kafka and Kafka Vert.x clients in Quarkus
Liquibase: How to use Liquibase to manage you schema migrations
Liquibase MongoDB: How to use Liquibase MongoDB extension to manage you MongoDB migrations
Micrometer: How to use Micrometer to gather metrics
MicroProfile Fault Tolerance: How to use MicroProfile Fault Tolerance
MicroProfile GraphQL: How to use MicroProfile GraphQL
MicroProfile GraphQL Client: How to use MicroProfile GraphQL Client
MicroProfile Health: How to use MicroProfile Health
MicroProfile Metrics: How to use MicroProfile Metrics
MongoDB: How to connect to a MongoDB datastore
MongoDB with Panache: Simplify your MongoDB applications with Panache
MicroProfile Messaging MQTT: How to interact with MQTT using MicroProfile reactive messaging
Neo4j: How to connect to a Neo4j graph datastore
Pulsar: How to interact with Apache Pulsar using MicroProfile reactive messaging
OpenAPI and Swagger UI: Use OpenAPI and Swagger UI to expose your REST API and test your REST services
OpenTelemetry: How to use OpenTelemetry to monitor application performance
OptaPlanner: How to use OptaPlanner to optimize business resources
Quartz: How to schedule periodic clustered jobs
Qute: How to use the Qute templating engine in Quarkus
RabbitMQ: How to interact with RabbitMQ using MicroProfile reactive messaging
Reactive Routes: How to use Reactive Routes in Quarkus
REST Client Reactive: How to use MicroProfile's REST Client with Reactive client
REST Client: How to use MicroProfile's REST Client
REST Client Multipart: Handle multipart with MicroProfile's REST Client
JSON REST services: How to write JSON REST services
Scheduling periodic tasks: How to schedule periodic jobs
Security with Users stored in a Database (JDBC): Store your users in a database and secure your application with JDBC
Security with Users stored in a Database (JPA): Store your users in a database and secure your application with JPA
Security with Users stored in a Database (JPA Reactive): Store your users in a database and secure your application using Hibernate Reactive
Security with MicroProfile JWT: How to use MicroProfile JWT RBAC
Security with an LDAP realm: How to use an LDAP server to authenticate and authorize your user identities
Security with OAuth2 opaque tokens: How to use our security layer with OAuth2 opaque tokens
Security with OpenId Connect: How to use OpenId Connect and Keycloak
Security with MicroProfile JWT: How to use MicroProfile JWT RBAC
Security with WebAuthn using Hibernate ORM: Authenticate your users using WebAuthn and Hibernate ORM
Security with WebAuthn using Hibernate Reactive: Authenticate your users using WebAuthn and Hibernate Reactive
Supporting Multi-Tenancy in OpenID Connect Applications: How to use OpenId Connect and Keycloak
Spring DI compatibility layer: How to use our Spring Dependency Injection compatibility layer
Spring Data extension: How to use the Quarkus extension for the Spring Data API
Spring Web extension: How to use the Quarkus extension for the Spring Web API
Spring Security extension: How to use the Quarkus extension for the Spring Security API
Spring Boot Properties extension: How to use the Quarkus extension for the Spring Boot properties
Spring Scheduled extension: How to use the Quarkus extension for the Spring Scheduled annotation
Spring Data REST extension: How to use the Quarkus extension for the Spring Data REST
Using STM: How to use the Narayana Software Transactional Memory extension
Stork Consul: How to discover and select services with Consul
Stork Kubernetes: How to discover and select services with Kubernetes
Stork Dns: How to discover and select services with DNS
Apache Tika: Extract metadata and content from your documents
Validation with Hibernate Validator: How to use Hibernate Validator/Bean Validation in your REST services
Using Vert.x: How to use the Vert.x extension
Using Web Sockets: Demonstrate how to use web sockets and serve static assets
Context Propagation: Demonstrate how to use context propagation in your reactive applications
Funqy HTTP: Funqy functions as HTTP/REST endpoints
Funqy AWS Lambda: Funqy functions as deployed to AWS Lambda
Funqy AWS Lambda HTTP: Funqy functions as deployed to AWS Lambda invokable via HTTP/REST
Funqy Azure Functions HTTP: Funqy functions as deployed to Azure Functions invokable via HTTP/REST
Funqy Knative Events: Funqy functions integration with Knative Events
Funqy Google Cloud Functions: Funqy functions as deployed to Google Cloud Functions
gRPC Plain text Quickstart: How to use Quarkus gRPC extension with plain text communication
gRPC TLS Quickstart: How to use Quarkus gRPC extension with TLS communication
Mailer Quickstart: How to use the Quarkus mailer
Using Vert.x Redis Client: Demonstrate how to use Vert.x Redis Client
Google Cloud Functions: How to create Google Cloud Functions
Google Cloud Functions HTTP: How to bind our HTTP layer (JAX-RS, Servlet or Reactive Route) to Google Cloud Functions
JTA: How use JTA transactions with HTTP/REST
Reactive Messaging with HTTP: How to consume and produce HTTP messages with Reactive Messaging
Reactive Messaging with Web Sockets: How to consume and produce messages via Web Sockets with Reactive Messaging
Elasticsearch: How to use the Elasticsearch REST client and the Java API client
There is documentation published at https://quarkus.io (docs' sources are here).