> For the complete documentation index, see [llms.txt](https://andifalk.gitbook.io/spring-cloud-gateway-workshop/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://andifalk.gitbook.io/spring-cloud-gateway-workshop/readme.md).

# README

[![Java CI](https://github.com/andifalk/spring-cloud-gateway-workshop/actions/workflows/maven.yml/badge.svg)](https://github.com/andifalk/spring-cloud-gateway-workshop/actions/workflows/maven.yml) [![CodeQL](https://github.com/andifalk/spring-cloud-gateway-workshop/actions/workflows/codeql.yml/badge.svg)](https://github.com/andifalk/spring-cloud-gateway-workshop/actions/workflows/codeql.yml)

## Microservices on the Edge with Spring Cloud Gateway (Hands-On Workshop)

A hands-on workshop to build an API-Gateway using the [Spring Cloud Gateway](https://spring.io/projects/spring-cloud-gateway).

### Table of Contents

* [Workshop Tutorial](#workshop-tutorial)
* [Introduction](/spring-cloud-gateway-workshop/introduction/introduction.md)
* [Hands-On Workshop](#hands-on-workshop)
  * [Intro Lab](#intro-lab)
  * [Hands-On Labs](#hands-on-labs)
* [Next Steps](#next-steps)
* [Feedback](#feedback)
* [License](#license)

### Workshop Tutorial

To follow the hands-on workshop please open the [workshop tutorial](https://andifalk.gitbook.io/spring-cloud-gateway-workshop/).

### Introduction

The sample application architecture you will build (and use) looks like this:

![Architecture](/files/7hnewp15bVotSgsrgdTB)

* [Prerequisites](/spring-cloud-gateway-workshop/introduction/prerequisites.md)
* [Requirements and Setup](/spring-cloud-gateway-workshop/introduction/setup.md)
* [Introduction to Spring Cloud Gateway](/spring-cloud-gateway-workshop/introduction/introduction.md)
* [Sample Application Architecture](/spring-cloud-gateway-workshop/introduction/architecture.md)
* [Provided Backend Microservices](/spring-cloud-gateway-workshop/introduction/microservices.md)

### Hands-On Workshop

#### Intro Lab

* [Reactive Streams with Spring Reactor in Action](/spring-cloud-gateway-workshop/intro-lab/reactive-playground.md)

#### Hands-On Labs

* [Lab 1: Routing - Configure & Monitor Gateway Routes](/spring-cloud-gateway-workshop/hands-on-labs/lab1.md)
* [Lab 2: Resilience - Retry, Circuit Breaking and Rate Limiting](/spring-cloud-gateway-workshop/hands-on-labs/lab2.md)
* [Lab 3: Security Part 1 - Authentication with JWT](/spring-cloud-gateway-workshop/hands-on-labs/lab3.md)
* [Lab 4: Security Part 2 - Secure Communication with TLS](/spring-cloud-gateway-workshop/hands-on-labs/lab4.md)

### Next Steps

* [Further Gateway Features](/spring-cloud-gateway-workshop/next-steps/next-steps.md)

### Feedback

Any feedback on this hands-on workshop is highly appreciated. Just email *andreas.falk(at)novatec-gmbh.de* or contact me via Twitter (*@andifalk*).

### License

Apache 2.0 licensed
