forge-docs

0002. Adoption of Quarkus for API and Controller Tier

Status: Accepted Date: 2025-10-08 Context: Early-stage architecture decision for core application backend; need a performant, cloud-native JVM framework for APIs and controllers.

Context

We require a performant, scalable, and cloud-native framework for building our application’s API and controller tiers. The solution should:

Previous experience with NestJS/Node.js highlighted challenges with dependency management, runtime performance, and long-term maintainability. The team also has prior expertise in Java and Dropwizard, prompting an evaluation of modern JVM-based microservice frameworks.


Decision

We will adopt Quarkus as the primary framework for implementing both the API layer and the controller (web) tier.

Quarkus is selected for the following reasons:


Database Choice

Quarkus supports any JDBC-compatible database. PostgreSQL is the default in most examples, and aligns well with AWS offerings.

Production Environment

Local Development


AWS Deployment Considerations


Local Environment Considerations


Consequences

Positive:

Negative / Tradeoffs: