Skip to content

Simple case of an real world web api using Eclipse Vert.x tool-kit

Notifications You must be signed in to change notification settings

diegocamara/vertx-springboot-realworld-example-app

 
 

Repository files navigation

RealWorld Example App

Eclipse Vert.x tool-kit 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 fullstack application built with Eclipse Vert.x) including CRUD operations, authentication, routing, pagination, and more.

We've gone to great lengths to adhere to the Eclipse Vert.x community styleguides & best practices.

For more information on how to this works with other frontends/backends, head over to the RealWorld repo.

Build Status

How it works

This application demonstrates an approach to using Eclipse Vert.x infrastructure to implement a web api.

Some modules used in this app:

Project Structure

main/generated   ->   VertxEBProxy, VertxProxyHandler and Request/Response converters
+--java
|  +--com
|     +--example
|        +--realworld
|           +-- application     ->     spec logic implementation
|           +-- domain          ->     domain model objects
|           +-- infrastructure  ->     technical details package

Getting started

Start local server

./mvnw spring-boot:run

The server should be running at http://localhost:8080

Running the application's integrated tests

./mvnw test

Running postman collection tests

./collections/run-api-tests.sh

Building jar file

./mvnw package

file location: target/vertx-springboot-realworld-example-app.jar

Database changes can be made to the application.yml file.

spring:
  datasource:
    url: jdbc:h2:mem:testdb;DB_CLOSE_ON_EXIT=FALSE;DB_CLOSE_DELAY=-1
    username: sa
    password:

Help

Improvements are welcome, feel free to contribute.

About

Simple case of an real world web api using Eclipse Vert.x tool-kit

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.8%
  • Shell 0.2%