This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git


The following commit(s) were added to refs/heads/master by this push:
     new bcb05da0c Doc updates.
bcb05da0c is described below

commit bcb05da0c88afb3fdf66d05641314d1204b0d0ca
Author: James Bognar <[email protected]>
AuthorDate: Sun Sep 28 11:32:17 2025 -0400

    Doc updates.
---
 README.md                                          |   1 +
 .../topics/01.01.00.JuneauEcosystemOverview.md     |   8 ++
 .../docs/topics/01.10.00.FrameworkComparisons.md   | 100 +++++++++++++++++++++
 juneau-docs/sidebars.ts                            |   5 ++
 4 files changed, 114 insertions(+)

diff --git a/README.md b/README.md
index 087585ea9..4d6d7d154 100644
--- a/README.md
+++ b/README.md
@@ -33,6 +33,7 @@
 ### 📋 Documentation
 * **[📚 Javadocs](https://juneau.staged.apache.org/site/apidocs/)** - Complete 
API documentation
 * **[📖 User 
Guide](https://juneau.staged.apache.org/docs/topics/JuneauEcosystemOverview)** 
- Comprehensive framework documentation
+* **[⚖️ Framework 
Comparisons](https://juneau.staged.apache.org/docs/topics/FrameworkComparisons)**
 - Compare Juneau with Jackson, Spring Boot, and JAX-RS
 * **[🔧 
Examples](https://juneau.staged.apache.org/docs/topics/JuneauExamplesCore)** - 
Code examples and tutorials
   * 
[juneau-examples-core](https://juneau.staged.apache.org/docs/topics/JuneauExamplesCore)
 - Core serialization examples
   * 
[juneau-examples-rest](https://juneau.staged.apache.org/docs/topics/JuneauExamplesRest)
 - REST API examples
diff --git a/juneau-docs/docs/topics/01.01.00.JuneauEcosystemOverview.md 
b/juneau-docs/docs/topics/01.01.00.JuneauEcosystemOverview.md
index 1e155509d..90a662c2b 100644
--- a/juneau-docs/docs/topics/01.01.00.JuneauEcosystemOverview.md
+++ b/juneau-docs/docs/topics/01.01.00.JuneauEcosystemOverview.md
@@ -22,6 +22,14 @@ Juneau excels in the following scenarios:
 * **Fluent-style assertions and testing** - Write readable test assertions 
with comprehensive validation capabilities
 * **Content negotiation and HTTP/2 support** - Handle multiple content types 
automatically with modern HTTP features
 
+#### When to Choose Juneau
+
+Not sure if Juneau is right for your project? Check out our detailed 
[Framework Comparisons](/docs/topics/FrameworkComparisons) page to see how 
Juneau compares to Jackson, Spring Boot, and JAX-RS.
+
+**Quick summary:** Choose Juneau when you need multi-format serialization, 
REST APIs with automatic content negotiation, or want an integrated solution 
with minimal dependencies.
+
+#### Ecosystem
+
 The Juneau ecosystem consists of the following parts:
 
 | Category | Maven Artifacts | Description | Prerequisites |
diff --git a/juneau-docs/docs/topics/01.10.00.FrameworkComparisons.md 
b/juneau-docs/docs/topics/01.10.00.FrameworkComparisons.md
new file mode 100644
index 000000000..8bc7adaad
--- /dev/null
+++ b/juneau-docs/docs/topics/01.10.00.FrameworkComparisons.md
@@ -0,0 +1,100 @@
+---
+title: "Framework Comparisons"
+slug: FrameworkComparisons
+---
+
+# Framework Comparisons
+
+This page provides detailed comparisons between Juneau and popular 
alternatives to help you choose the right tool for your needs.
+
+## Juneau vs Jackson
+
+| Feature | Juneau | Jackson | Winner |
+|---------|--------|---------|--------|
+| **Multi-format support** | JSON, XML, HTML, URL-Encoding, UON, OpenAPI, 
PlainText, CSV, SOAP, MessagePack, RDF | Primarily JSON (with modules for XML, 
YAML, etc.) | **Juneau** - Built-in multi-format support |
+| **Zero dependencies** | Core marshalling has zero external dependencies | 
Requires additional modules for different formats | **Juneau** - Truly 
zero-dependency |
+| **REST API integration** | Built-in REST server and client with automatic 
content negotiation | Requires separate REST framework | **Juneau** - 
Integrated solution |
+| **Self-documenting APIs** | Automatic Swagger/OpenAPI generation | Requires 
additional tools | **Juneau** - Built-in documentation |
+| **Testing support** | MockRestClient for serverless testing | Requires 
external testing frameworks | **Juneau** - Integrated testing |
+| **Configuration files** | Built-in INI-style config with POJO support | No 
built-in configuration support | **Juneau** - Comprehensive config API |
+| **Performance** | ~20% faster than Jackson, optimized for memory efficiency 
| Highly optimized for JSON | **Juneau** - Better performance in benchmarks |
+| **Ecosystem maturity** | Smaller community, newer project | Large community, 
extensive ecosystem | **Jackson** - More mature ecosystem |
+| **Learning curve** | Steeper initial learning curve | Well-documented, many 
tutorials | **Jackson** - Easier to get started |
+
+**Choose Juneau when:** You need multi-format serialization, REST APIs, or 
want an integrated solution with minimal dependencies.
+
+**Choose Jackson when:** You only need JSON serialization, want maximum 
performance, or need extensive community support.
+
+## Juneau REST APIs vs Spring Boot Web Controllers
+
+| Feature | Juneau REST APIs | Spring Boot Web Controllers | Winner |
+|---------|------------------|----------------------------|--------|
+| **REST API creation** | Annotation-based with automatic content negotiation 
| Requires @RestController, @RequestMapping, etc. | **Juneau** - Simpler REST 
API setup |
+| **Self-documenting APIs** | Automatic Swagger generation | Requires 
SpringDoc or similar | **Juneau** - Built-in documentation |
+| **Content negotiation** | Automatic support for all formats (JSON, XML, 
HTML, etc.) with single method | Must define separate methods for each content 
type | **Juneau** - Single method handles all formats |
+| **Serialization** | Built-in multi-format support | Requires additional 
configuration | **Juneau** - Integrated serialization |
+| **Testing** | MockRestClient for serverless testing | Requires 
@SpringBootTest with embedded containers | **Juneau** - Faster testing |
+| **Dependencies** | Minimal additional dependencies | Uses Spring's 
dependency injection | **Juneau** - Lighter footprint |
+| **Integration** | Works seamlessly with Spring Boot | Native Spring Boot 
feature | **Spring Boot** - Native integration |
+| **Learning curve** | New annotations to learn | Standard Spring annotations 
| **Spring Boot** - Familiar to Spring developers |
+| **Ecosystem** | Focused on REST and serialization | Full Spring ecosystem | 
**Spring Boot** - Larger ecosystem |
+
+**Use Juneau REST APIs when:** You want automatic content negotiation, 
built-in documentation, or need multi-format serialization in your Spring Boot 
application.
+
+**Use Spring Boot Web Controllers when:** You prefer standard Spring patterns, 
need complex request handling, or want to leverage existing Spring knowledge.
+
+**Note:** Juneau works perfectly with Spring Boot! You can use Juneau REST 
APIs alongside Spring Boot's dependency injection, security, and other features.
+
+## Juneau vs JAX-RS
+
+| Feature | Juneau | JAX-RS | Winner |
+|---------|--------|--------|--------|
+| **API simplicity** | POJO-based with automatic serialization | Requires 
explicit serialization handling | **Juneau** - Simpler API |
+| **Content negotiation** | Automatic based on Accept headers | Manual content 
negotiation | **Juneau** - Automatic negotiation |
+| **Documentation** | Automatic Swagger generation | Requires additional tools 
| **Juneau** - Built-in documentation |
+| **Testing** | MockRestClient for unit testing | Requires external testing 
frameworks | **Juneau** - Integrated testing |
+| **Dependencies** | Minimal dependencies | Requires JAX-RS implementation | 
**Juneau** - Fewer dependencies |
+| **Standards compliance** | Proprietary but simple | Industry standard | 
**JAX-RS** - Standard compliance |
+| **Ecosystem** | Smaller ecosystem | Large ecosystem with many 
implementations | **JAX-RS** - Larger ecosystem |
+| **Learning curve** | Steeper initial learning | Well-documented standard | 
**JAX-RS** - Easier to learn |
+
+**Choose Juneau when:** You want simplicity, automatic features, and minimal 
configuration.
+
+**Choose JAX-RS when:** You need standards compliance, extensive ecosystem, or 
enterprise integration.
+
+## Performance Benchmarks
+
+### Serialization Performance
+Juneau has been shown to be approximately **20% faster** than Jackson in 
performance tests, while maintaining excellent memory efficiency.
+
+### Memory Usage
+Juneau is optimized for memory efficiency, making it ideal for:
+- High-throughput applications
+- Memory-constrained environments
+- Microservices with limited resources
+
+### Startup Time
+Juneau's minimal dependencies and lightweight design result in faster 
application startup times compared to heavier frameworks.
+
+## Migration Considerations
+
+### From Jackson to Juneau
+- **Easy migration** for basic serialization use cases
+- **Annotation mapping** available (see [Jackson 
Comparison](/docs/topics/JacksonComparison))
+- **Performance benefits** with minimal code changes
+
+### From Spring Boot Controllers to Juneau REST APIs
+- **Gradual migration** possible - use alongside existing controllers
+- **Automatic content negotiation** reduces boilerplate code
+- **Built-in documentation** eliminates need for additional tools
+
+### From JAX-RS to Juneau
+- **Simplified API** with fewer annotations required
+- **Automatic serialization** reduces manual configuration
+- **Integrated testing** improves development workflow
+
+## Getting Started
+
+Ready to try Juneau? Check out our [Getting Started 
Guide](/docs/topics/JuneauEcosystemOverview) or explore our 
[examples](/docs/topics/JuneauExamplesCore).
+
+For detailed feature comparisons, see our [Jackson 
Comparison](/docs/topics/JacksonComparison) page.
diff --git a/juneau-docs/sidebars.ts b/juneau-docs/sidebars.ts
index 451823130..30814411d 100644
--- a/juneau-docs/sidebars.ts
+++ b/juneau-docs/sidebars.ts
@@ -84,6 +84,11 @@ const sidebars: SidebarsConfig = {
           id: 'topics/01.09.00.GeneralDesign',
           label: '1.9. General Design',
         },
+        {
+          type: 'doc',
+          id: 'topics/01.10.00.FrameworkComparisons',
+          label: '1.10. Framework Comparisons',
+        },
       ],
     },
     {

Reply via email to