Vertx codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.
This codebase was created to demonstrate a fully fledged backend application built with Vertx including CRUD operations, authentication, routing, pagination, and more.
We've gone to great lengths to adhere to the Vertx community styleguide & best practices.
For more information on how to this works with other frontends/backends, head over to the RealWorld repo.
We deviated from the spec in the following ways:
- tokens are passed via a header of
Authorization: Bearer <token>
notAuthorization: Token <token>
. This is because the Vertx JWT Auth module uses theBearer
scheme. Version 2 of the realworld spec will useBearer
as well (tracking issue).
We use vertx libraries wherever possible. This includes vertx-web , vertx-openapi and vertx-auth-jwt. For dependency injection we use dagger. And for database interactions we use jooq with r2dbc for a fully asynchronous application.
./gradlew run