# Rage Framework Documentation > Comprehensive guide to building applications with the Ruby Rage framework ## Api - [API Reference](https://rage-rb.dev/api.md): Complete technical documentation for all Rage framework classes and modules. ## Blog - [Blog](https://rage-rb.dev/blog.md): Blog - [Version 0.1 Release](https://rage-rb.dev/blog/2023/09/15/version-0-1.md): Today marks the first official release of Rage. This initial version includes the foundational pieces: - [Version 0.7 Release](https://rage-rb.dev/blog/2024/01/09/version-0-7.md): Version 0.7 is a significant milestone - all the features planned for the initial release are now implemented. The framework has the essential pieces in place: - [WebSocket Support](https://rage-rb.dev/blog/2024/08/06/websockets.md): Version 1.8.0 adds WebSocket support through an Action Cable-compatible API. If you're familiar with Action Cable, the interface will feel immediately familiar - same channels, same broadcasting patterns. - [OpenAPI Documentation](https://rage-rb.dev/blog/2024/12/18/openapi.md): Version 1.11.0 brings Rage::OpenAPI for API documentation. The goal was to make documenting APIs less painful - you document your APIs using YARD-style tags, and it generates OpenAPI 3.0 specs automatically. - [TechEmpower Benchmarks](https://rage-rb.dev/blog/2025/03/11/techempower-benchmarks.md): TechEmpower Round 23 results are in. Rage shows solid performance improvements over other Ruby frameworks: - [Rage REST API Tutorial](https://rage-rb.dev/blog/2025/04/13/zuplo-tutorial.md): We collaborated with Zuplo on a tutorial for building REST APIs with Rage. The guide walks through creating a full-featured API application from scratch: - [Cloudflare Support](https://rage-rb.dev/blog/2025/07/17/cloudflare-support.md): Rage was accepted into Cloudflare's Project Alexandria today. - [Background Tasks](https://rage-rb.dev/blog/2025/08/20/deferred.md): Version 1.17.0 introduces Rage::Deferred for background task execution. - [Impractical Ruby Optimisations](https://rage-rb.dev/blog/2025/09/30/impractical-ruby-optimisations.md): Wrote an article exploring some unconventional performance optimizations in Ruby. - [Observability Features](https://rage-rb.dev/blog/2026/01/23/observability.md): Versions 1.19.0 and 1.20.0 brought a set of observability features designed to make debugging and monitoring Rage applications easier. The focus was on giving you control over your logs and visibility into what's happening inside the framework. - [The Operational Monolith](https://rage-rb.dev/blog/2026/02/20/operational-monolith.md): Wrote an article exploring what Rails might look like if it was designed around modern operational constraints from day one. - [SSE Benchmark](https://rage-rb.dev/blog/2026/04/09/sse-benchmark.md): Ran a benchmark to test SSE performance under sustained load. Two workers on a €12/month CCX13 Hetzner server handling 5K RPS to a SQLite-backed endpoint plus 5K concurrent SSE streams. - [Production Results](https://rage-rb.dev/blog/2026/05/11/production-results.md): Two production Rails apps were migrated to Rage and put through 30-second spike tests. Both are I/O-bound workloads - the kind where fiber-based concurrency should help. - [Rage in the Wild](https://rage-rb.dev/blog/2026/07/04/rage-in-the-wild.md): Wrote an article exploring real-world patterns from popular Ruby open-source codebases and showing how they could be modelled using Rage. - [Blog](https://rage-rb.dev/blog/page/2.md): Blog ## Docs - [Common Patterns](https://rage-rb.dev/docs/common-patterns.md): This guide covers common patterns and best practices for building applications with Rage. - [Controllers](https://rage-rb.dev/docs/controllers.md): Controllers are the heart of your Rage application. Rage follows the MVC (Model-View-Controller) pattern, with a focus on the C (Controller) layer, which handles incoming requests and coordinates responses. - [Background Processing](https://rage-rb.dev/docs/deferred.md): Rage::Deferred is Rage's built-in background job queue that runs in the same process as your web server. It offloads long-running tasks from request handling, allowing you to respond to clients faster. - [Event System](https://rage-rb.dev/docs/event-system.md): Most Ruby applications describe how things happen. Rage lets you describe what happened - and the system responds. - [Introduction](https://rage-rb.dev/docs/intro.md): Creating a New App - [Logging](https://rage-rb.dev/docs/logging.md): Rage provides a powerful structured logging system that makes it easy to debug your application and integrate with observability platforms. Unlike traditional text-based logs, Rage's logs are built on key-value pairs, making them searchable, filterable, and ready for analysis. - [OpenAPI Documentation](https://rage-rb.dev/docs/openapi.md): Rage includes built-in support for generating OpenAPI specifications automatically from your controllers. Rage::OpenAPI analyzes your routes and controller code to create interactive API documentation. - [Rails Integration](https://rage-rb.dev/docs/rails.md): You can integrate Rage into existing Rails applications to boost performance while keeping your familiar Rails stack. This guide walks you through the process using a real-world example. - [Routing](https://rage-rb.dev/docs/routing.md): Routing determines how your application responds to incoming HTTP requests. In Rage, routes connect URLs to controller actions and are defined in the config/routes.rb file. - [Testing with RSpec](https://rage-rb.dev/docs/rspec.md): Rage provides built-in RSpec integration for testing your API endpoints. After requiring rage/rspec, you get access to familiar Rails-style testing helpers. - [Server-Sent Events](https://rage-rb.dev/docs/sse.md): Server-Sent Events provide a simple way to push real-time updates from your server to clients over HTTP. Unlike WebSockets, SSE is unidirectional (server to client only), making it perfect for live feeds, notifications, and streaming responses. - [Telemetry](https://rage-rb.dev/docs/telemetry.md): Rage provides a built-in telemetry system that lets you observe and measure what's happening inside your application. Use it to integrate with monitoring platforms, track performance metrics, debug production issues, or build custom observability solutions. - [WebSockets](https://rage-rb.dev/docs/websockets.md): Rage::Cable is Rage's WebSocket implementation, compatible with Action Cable. It enables real-time, bidirectional communication between your server and clients over a single WebSocket connection.