Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sczyh30/vertx-blueprint-todo-backend

Vert.x Blueprint Project - A reactive todo-backend implementation using Vert.x and various persistence
https://github.com/sczyh30/vertx-blueprint-todo-backend

asynchronous reactive-programming restful-api rxjava2 vertx

Last synced: 3 months ago
JSON representation

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

Awesome Lists containing this project

README

        

# Vert.x Blueprint - Todo Backend

[![Travis Build Status](https://travis-ci.org/sczyh30/vertx-blueprint-todo-backend.svg?branch=master)](https://travis-ci.org/sczyh30/vertx-blueprint-todo-backend)

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

- [English Version](http://sczyh30.github.io/vertx-blueprint-todo-backend/)
- [中文文档](http://sczyh30.github.io/vertx-blueprint-todo-backend/cn/)

## 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

- [OpenShift Live Demo URL](http://verttodo-sczyh30.rhcloud.com/todos)
- [API Test](http://www.todobackend.com/specs/index.html?http://verttodo-sczyh30.rhcloud.com/todos)
- [Client Test](http://www.todobackend.com/client/index.html?http://verttodo-sczyh30.rhcloud.com/todos)

## API Test

Test result of the RESTful API (using [todo-backend-js-spec](https://github.com/TodoBackend/todo-backend-js-spec)):

![RESTful API Test Result](docs/img/vert-api-test.png)

You can also run it with [the todo backend frontend client](http://www.todobackend.com/client/index.html):

![Todo Frontend](docs/img/vertx-todobackend-ui.png)