Skip to content

Latest commit

 

History

History
117 lines (74 loc) · 4.59 KB

README.md

File metadata and controls

117 lines (74 loc) · 4.59 KB

Kaoto Backend

This is the backend companion of the Kaoto project.

GitHub release (latest by date including pre-releases) GitHub

Docker Pulls Docker generation

GitHub contributors GitHub commit activity GitHub code size in bytes codecov

Quality Gate Status Reliability Rating Maintainability Rating Security Rating

Twitter Follow YouTube Channel Subscribers

Using Kaoto

This is the API companion for the Kaoto frontend. It is designed as an hexagonal architecture, decoupled and modularized to be able to easily add your own DSL, and with maintainability in mind.

This project uses Quarkus, the Supersonic Subatomic Java Framework. If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ .

Running as a docker container

There is a nightly dockerized container for the Kaoto backend. You can run it with the following command:

docker run --rm -d -p 8081:8081 kaotoio/backend

Developing Kaoto

Developer documentation is on https://kaotoio.github.io/kaoto-backend/

The API static swagger documentation is on https://kaotoio.github.io/kaoto-backend/api/index.html

Requirements

You have to install in your machine

  • Maven >= 3.6
  • JDK >= 17

Building

First you need to build and install the different maven modules.

mvn install

Running the dev mode

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

mvn quarkus:dev -pl api

Your app is now deployed on localhost:8081 and you can check the swagger API on http://localhost:8081/q/swagger-ui/.

NOTE: Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8081/q/dev/.

Packaging and Running

Kaoto can be packaged using:

mvn install

It produces the quarkus-run.jar file in the api/target/quarkus-app/ directory. Be aware that it’s not an über-jar as the dependencies are copied into the api/target/quarkus-app/lib/ directory.

If you want to build an über-jar, execute the following command:

mvn install -Dquarkus.package.type=uber-jar

Kaoto backend is now runnable using java -jar api/target/quarkus-app/quarkus-run.jar.

Creating a native executable

You can create a native executable using:

mvn install -Pnative

Or, if you don't have GraalVM installed, you can run the native executable build in a container using:

mvn install -Pnative -Dquarkus.native.container-build=true

You can then execute your native executable with: .api/target/code-with-quarkus-1.0.0-SNAPSHOT-runner

If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.html .

Building the Documentation

Documentation is generated using LeafDoc.

npm install
npm run docs