/cloud-native-pwas

Cloud Native Progressive Web Apps with Spring Boot and Angular

Primary LanguageShell

Cloud Native Progressive Web Apps with Spring Boot and Angular

Prerequisites: Java 8 and Node.js

Running the Project

Clone this project, start each Spring Boot app, then start the Angular client.

git clone git@github.com:mraible/cloud-native-pwas.git
cd cloud-native-pwas
cd kolin-reactive # or kotlin-basic

To run the client and all the servers, execute ./run.sh, or execute the commands in this file manually.

Deploy to Cloud Foundry

To deploy this application stack on Cloud Foundry with Pivotal Web Services, you’ll need to create an account, download/install the Cloud Foundry CLI, and sign-in (using cf login -a api.run.pivotal.io).

Both kotlin-reactive and kotlin-basic contain a deploy.sh script that you can run to deploy all four applications and configure them to work with each other.

Running Lighthouse on kotlin-reactive after it's deployed show it gets 💯 as a PWA!

Lighthouse Report

NOTE: I blame the poor performance score on conference wi-fi.

Learn More

Watch Building Robust APIs and Apps with Spring Boot and Angular from Virtual JUG, August 2017.

To see how to develop the Spring Boot microservices (with Java), see Build a Microservices Architecture for Microbrews with Spring Boot

To see how to develop the Angular client, see Build Your First Progressive Web Application with Angular and Spring Boot.

Security with Okta

To see how to lock things down with Okta, see the okta branch and this PR.

NOTE: This only works with the kotlin-basic project. Okta's Spring Boot Starter doesn't work with Spring Cloud Gateway.