Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mraible/cloud-native-pwas
Cloud Native Progressive Web Apps with Spring Boot and Angular
https://github.com/mraible/cloud-native-pwas
angular cloud-foundry netflix-eureka netflix-zuul progressive-web-app spring-boot spring-cloud
Last synced: about 2 months ago
JSON representation
Cloud Native Progressive Web Apps with Spring Boot and Angular
- Host: GitHub
- URL: https://github.com/mraible/cloud-native-pwas
- Owner: mraible
- Created: 2016-12-14T03:07:15.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2020-09-13T07:57:30.000Z (over 4 years ago)
- Last Synced: 2024-11-01T10:35:05.195Z (about 2 months ago)
- Topics: angular, cloud-foundry, netflix-eureka, netflix-zuul, progressive-web-app, spring-boot, spring-cloud
- Language: Shell
- Homepage: https://speakerdeck.com/mraible/building-cloud-native-progressive-web-apps-devoxx-morocco-2017
- Size: 1.26 MB
- Stars: 31
- Watchers: 6
- Forks: 7
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cloud Native Progressive Web Apps with Spring Boot and Angular
**Prerequisites:** [Java 8](http://www.oracle.com/technetwork/java/javase/overview/java8-2100321.html) and [Node.js](https://nodejs.org/)
## Running the Project
Clone this project, start each Spring Boot app, then start the Angular client.
```bash
git clone [email protected]: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](https://github.com/mraible/cloud-native-pwas/blob/master/kotlin-reactive/run.sh) manually.
## Deploy to Cloud Foundry
To deploy this application stack on Cloud Foundry with [Pivotal Web Services](http://run.pivotal.io/), you’ll need to create an account, download/install the [Cloud Foundry CLI](https://github.com/cloudfoundry/cli#downloads), 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](https://developers.google.com/web/tools/lighthouse/) on `kotlin-reactive` after it's deployed show it gets 💯 as a PWA!
![Lighthouse Report](lighthouse-report.png)
> **NOTE:** I blame the poor performance score on conference wi-fi.
## Learn More
Watch [Building Robust APIs and Apps with Spring Boot and Angular](https://virtualjug.com/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](https://developer.okta.com/blog/2017/06/15/build-microservices-architecture-spring-boot)
To see how to develop the Angular client, see [Build Your First Progressive Web Application with Angular and Spring Boot](https://developer.okta.com/blog/2017/05/09/progressive-web-applications-with-angular-and-spring-boot).
## Security with Okta
To see how to lock things down with Okta, see the `okta` branch and [this PR](https://github.com/mraible/cloud-native-pwas/pull/10).
> **NOTE:** This only works with the `kotlin-basic` project. Okta's Spring Boot Starter [doesn't work with Spring Cloud Gateway](https://github.com/okta/okta-spring-boot/issues/24).