Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 103 additions & 1 deletion docs/pages/about/advanced-concepts/spring-boot/index.md
Original file line number Diff line number Diff line change
@@ -1 +1,103 @@
We know that you are waiting, we will have this section ready very soon.
# Spring Boot

FF4j has provided Spring Boot starters which helps in integrating FF4j into your Spring Boot
application. The starters provide autoconfiguration for FF4j, making it easy to set up and use. With
Comment on lines +3 to +4
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The intro sentence has grammatical issues (“starters which helps”) and reads awkwardly. Consider rephrasing to something like “FF4j provides Spring Boot starters that help integrate FF4j into a Spring Boot application”, and keep wording consistent with the rest of the docs.

Suggested change
FF4j has provided Spring Boot starters which helps in integrating FF4j into your Spring Boot
application. The starters provide autoconfiguration for FF4j, making it easy to set up and use. With
FF4j provides Spring Boot starters that help integrate FF4j into a Spring Boot
application. The starters provide auto-configuration for FF4j, making it easy to set up and use. With

Copilot uses AI. Check for mistakes.
the starters, you can easily enable or disable features in your application based on the
configuration of FF4j.

## Overview

FF4j has 2 Spring Boot starter
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

“FF4j has 2 Spring Boot starter” should be plural and use a clearer phrasing (e.g., “FF4j provides two Spring Boot starters:”).

Suggested change
FF4j has 2 Spring Boot starter
FF4j provides two Spring Boot starters:

Copilot uses AI. Check for mistakes.

- [
`ff4j-spring-boot-starter-webmvc`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webmvc) -
The starter for Spring MVC applications.
- [
`ff4j-spring-boot-starter-webflux`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webflux) -
The starter for Spring WebFlux applications.
Comment on lines +12 to +17
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The starter list items appear to break Markdown link syntax by splitting the link’s opening [ onto its own line. This likely renders as a stray [ instead of a clickable link; keep each - [link](url) - description on a single line.

Suggested change
- [
`ff4j-spring-boot-starter-webmvc`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webmvc) -
The starter for Spring MVC applications.
- [
`ff4j-spring-boot-starter-webflux`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webflux) -
The starter for Spring WebFlux applications.
- [`ff4j-spring-boot-starter-webmvc`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webmvc) - The starter for Spring MVC applications.
- [`ff4j-spring-boot-starter-webflux`](https://github.com/ff4j/ff4j-spring-boot-starter-parent?tab=readme-ov-file#ff4j-spring-boot-starter-webflux) - The starter for Spring WebFlux applications.

Copilot uses AI. Check for mistakes.

| Feature | ff4j-spring-boot-starter-webmvc | ff4j-spring-boot-starter-webflux |
|-----------------------|:---------------------------------:|:---------------------------------:|
| RESTful APIs | ✅ | ✅ |
| OpenAPI Documentation | ✅ | ✅ |
| Web Console | ✅ | ❌ |

## Sample

### With `ff4j-spring-boot-starter-webmvc`

!!! info

The complete sample is available in the [ff4j-spring-boot-starter-webmvc-sample](https://github.com/ff4j/ff4j-samples/tree/master/ff4j-spring-boot-samples/ff4j-spring-boot-starter-webmvc-sample)

=== "1. Dependency"

Add the dependency [`ff4j-spring-boot-starter-webmvc`]()

Comment on lines +35 to +36
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a broken Markdown link: the dependency text links to () (empty URL). Please link it to the correct starter documentation (for consistency, docs/pages/about/quickstart/index.md links to the starter README in GitHub).

Copilot uses AI. Check for mistakes.
```xml title="pom.xml"
<dependency>
<groupId>org.ff4j</groupId>
<artifactId>ff4j-spring-boot-starter-webmvc</artifactId>
<version>${ff4j.version}</version>
</dependency>
```

=== "2. Configuration"

Configure FF4j

```kotlin title="FF4JConfiguration.kt"
import org.ff4j.FF4j
import org.ff4j.conf.XmlParser
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration

@Configuration
class FF4JConfiguration {
@Bean
fun getFF4J(): FF4j = FF4j(XmlParser(), "ff4j-features.xml")
}
Comment on lines +49 to +59
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The configuration example is written in Kotlin, but the rest of the docs pages in this section predominantly use Java snippets (e.g., docs/pages/about/advanced-concepts/aop/index.md). Consider providing the equivalent Java configuration (or offering both Java/Kotlin tabs) to stay consistent and avoid confusing readers who follow the Java-based examples elsewhere.

Copilot uses AI. Check for mistakes.
```

=== "3. Bootstrap"

Run the application with `mvn spring-boot:run` and access the FF4j web console at `http://localhost:8080/ff4j-console`

### With `ff4j-spring-boot-starter-webflux`

!!! info

The complete sample is available in the [ff4j-spring-boot-starter-webflux-sample](https://github.com/ff4j/ff4j-samples/tree/master/ff4j-spring-boot-samples/ff4j-spring-boot-starter-webflux-sample)

=== "1. Dependency"

Add the dependency [`ff4j-spring-boot-starter-webmvc`]()

Comment on lines +74 to +75
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the WebFlux sample, the dependency text references ff4j-spring-boot-starter-webmvc and also uses an empty () URL. This should reference/link to ff4j-spring-boot-starter-webflux instead.

Copilot uses AI. Check for mistakes.
```xml title="pom.xml"
<dependency>
<groupId>org.ff4j</groupId>
<artifactId>ff4j-spring-boot-starter-webflux</artifactId>
<version>${ff4j.version}</version>
</dependency>
```

=== "2. Configuration"

Configure FF4j

```kotlin title="FF4JConfiguration.kt"
import org.ff4j.FF4j
import org.ff4j.conf.XmlParser
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration

@Configuration
class FF4JConfiguration {
@Bean
fun getFF4J(): FF4j = FF4j(XmlParser(), "ff4j-features.xml")
}
```

=== "3. Bootstrap"

Run the application with `mvn spring-boot:run` and access the FF4j web console at `http://localhost:8080/ff4j-console`
Comment on lines +101 to +103
Copy link

Copilot AI Feb 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line says to access the “FF4j web console” for the WebFlux starter, but the feature matrix above indicates WebFlux does not provide the web console. Please adjust this bootstrap step to match the stated capabilities (e.g., point to REST/OpenAPI endpoints instead, or clarify if/when the console is available).

Copilot uses AI. Check for mistakes.