Class: RailsFlowMap::OpenapiFormatter
- Inherits:
-
Object
- Object
- RailsFlowMap::OpenapiFormatter
- Defined in:
- lib/rails_flow_map/formatters/openapi_formatter.rb
Overview
Generates OpenAPI 3.0 specification from Rails application routes
This formatter analyzes Rails routes and generates a complete OpenAPI/Swagger specification that can be used with tools like Swagger UI, Postman, or Insomnia.
Instance Method Summary collapse
-
#format(graph = @graph) ⇒ String
Generates the OpenAPI specification.
-
#initialize(graph, options = {}) ⇒ OpenapiFormatter
constructor
Creates a new OpenAPI formatter instance.
Constructor Details
#initialize(graph, options = {}) ⇒ OpenapiFormatter
Creates a new OpenAPI formatter instance
29 30 31 32 33 34 35 |
# File 'lib/rails_flow_map/formatters/openapi_formatter.rb', line 29 def initialize(graph, = {}) @graph = graph = @api_version = [:api_version] || '1.0.0' @title = [:title] || 'Rails API Documentation' @description = [:description] || 'Auto-generated API documentation by RailsFlowMap' end |
Instance Method Details
#format(graph = @graph) ⇒ String
Generates the OpenAPI specification
41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/rails_flow_map/formatters/openapi_formatter.rb', line 41 def format(graph = @graph) { openapi: '3.0.0', info: generate_info, servers: generate_servers, paths: generate_paths, components: { schemas: generate_schemas, securitySchemes: generate_security_schemes } }.to_yaml end |