pictet-technologies-open-source/reactive-todo-list-r2dbc

Repository files navigation

CircleCICodeFactorLicense: MIT

Made with Love by Pictet TechnologiesLinkedIn

Medium

This project aims to explain how to build a fully reactive application with Spring Boot, Spring Webflux, Angular, PostgreSQL and Spring Data R2DBC. It demonstrates how to deal with concurrent modifications using optimistic locking, PostgreSQL Listen/Notify and Server Sent Events.

FolderDescription
dockerContains the docker-compose.yml used to setup the application
todo-list-applicationSpring boot application (back-end)
todo-list-uiAngular application (front-end)

In order to build the application you need to have the following softwares installed:

  • open JDK or oracle JDK >= 8
  • docker & docker compose
  • npm
$ build.sh
$ start.sh

Once the application is started you can access it using the following links :

NameLink
UIhttp://localhost:8080
Swagger UIhttp://localhost:8080/swagger-ui/#/item-controller
PgAdminhttp://localhost:5050/

If you only want to start postgres, execute the following command

$ start.sh -postgres-only

Login to PgAdmin: http://localhost:5050/

Create a connection

  • Server: postgres
  • Database name: todolist
  • User: admin
  • Password: password
$ stop.sh

You need to have docker installed to build the application.

Ensure that the URL of the application has been correctly configured in the following file.

todo-list-ui/src/app/environments/environment.prod.ts

Then build the application in production mode.

$ mvnw clean install -Pprod

About

Sample reactive application using Angular, Spring Boot, Spring Webflux, Spring Data R2DBC and PostgreSQL. It also demonstrates the notification feature of PostgreSQL (listen/notify)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published