spring-webflux

Develop reactive Spring WebFlux applications with Kotlin Coroutines and R2DBC.

1|Updated Mar 16, 2026
One-click install
npx skills add https://github.com/iceflower/opencode-agents-and-skills --skill spring-webflux
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spring-webflux
Source: https://github.com/iceflower/opencode-agents-and-skills/tree/main/skills/spring-webflux
Command: npx skills add https://github.com/iceflower/opencode-agents-and-skills --skill spring-webflux

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill addresses the challenges of building high-concurrency, non-blocking applications using Spring WebFlux and Kotlin Coroutines, ensuring efficient I/O operations and responsive services.

Core Features & Use Cases

  • Reactive Endpoints: Design controllers that handle requests asynchronously.
  • Coroutine Integration: Leverage suspend functions and Flow for seamless reactive programming.
  • R2DBC Support: Interact with databases reactively using R2DBC repositories.
  • WebClient: Implement non-blocking HTTP client calls.
  • Use Case: Develop a microservice that streams real-time stock data to multiple clients using Server-Sent Events (SSE) while efficiently handling concurrent requests.

Quick Start

Use the spring-webflux skill to create a reactive controller that streams user data using Flow.

Frequently Asked Questions about spring-webflux

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build reactive controllers in Spring WebFlux using Kotlin Coroutines?

Build reactive controllers in Spring WebFlux by defining endpoints with Kotlin `suspend` functions and returning `Flow` types. This integration handles asynchronous operations non-blocking, ensuring efficient I/O and responsive services.

What is the best way to handle reactive database access in Spring WebFlux?

Handle reactive database access in Spring WebFlux using R2DBC repositories. R2DBC provides a non-blocking, reactive connection to interact with databases, ensuring efficient concurrent data operations without blocking threads.

Can I stream real-time data to clients using Server-Sent Events with Spring WebFlux?

Yes, you can stream real-time data to multiple clients using Server-Sent Events (SSE) with Spring WebFlux. Implement non-blocking endpoints returning `Flow` to efficiently handle concurrent SSE connections.

Does Spring WebFlux support non-blocking HTTP requests with WebClient?

Spring WebFlux supports non-blocking HTTP client calls using WebClient. WebClient facilitates asynchronous inter-service communication, preventing thread blocking and maintaining high concurrency in reactive microservices.

How do you manage structured concurrency and error handling in reactive Spring applications?

Manage structured concurrency and error handling in reactive Spring applications using Kotlin Coroutines. The skill provides conventions for `Flow` patterns and robust error handling strategies tailored for asynchronous reactive environments.

When do I need Kotlin Coroutines for Spring WebFlux instead of traditional approaches?

You need Kotlin Coroutines for Spring WebFlux when building high-concurrency, non-blocking applications. Coroutines simplify complex asynchronous logic and structured concurrency compared to traditional callback or reactive stream approaches.