/vertx-blueprint-todo-backend

Vert.x Blueprint Project - A reactive todo-backend implementation using Vert.x and various persistence

Primary LanguageJavaApache License 2.0Apache-2.0

Vert.x Blueprint - Todo Backend

Travis Build Status

Vert.x blueprint application - A reactive todo-backend implementation using Vert.x and various persistence (e.g. Redis or MySQL).

This repository is an introduction to basic Vert.x web RESTful service development and reactive programming. Detailed tutorials (both in Chinese and English) are provided below.

Note: We've redesigned the code with reactive and functional style with RxJava 2 and Vert.x 3.5.x.

Contents

  • What is Vert.x and its principles
  • What is and how to use Verticle
  • How to develop a REST API using Vert.x Web
  • How to make use of asynchronous development model
  • Reactive programming with RxJava 2
  • How to use persistence such as Redis and MySQL with the help of Vert.x async data components

Detailed Document

Want to improve this blueprint ?

Forks and PRs are definitely welcome !

Build

To build the code:

gradle build -x test

Run service locally:

  • with Redis: java -jar build/libs/vertx-blueprint-todo-backend-fat.jar -conf config/config.json
  • with MySQL: java -jar build/libs/vertx-blueprint-todo-backend-fat.jar -conf config/config_jdbc.json

Run with Docker Compose:

docker-compose up --build

OpenShift

API Test

Test result of the RESTful API (using todo-backend-js-spec):

RESTful API Test Result

You can also run it with the todo backend frontend client:

Todo Frontend