30 open-source projects similar to swagger-api/swagger-core, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Swagger Core alternative.
Swashbuckle.AspNetCore is an API specification tool and documentation generator for ASP.NET Core. It extracts metadata from source code and models to produce standardized OpenAPI specifications and interactive browser interfaces for exploring and testing web APIs. The project integrates a middleware component to serve these specifications and a Swagger UI for interactive API testing directly from a running application. It also provides a command-line exporter to extract specification files from application assemblies for use in CI/CD pipelines. The tool covers a wide range of capabilities in
utoipa is a Rust API documentation tool used to generate machine-readable OpenAPI specifications. It functions as a specification generator and schema mapper that converts Rust structs and enums into compliant OpenAPI schemas. The project distinguishes itself by using procedural macros and traits to automate metadata extraction from code. It supports complex data modeling, including generics, polymorphism, and recursive type resolution, while synchronizing field renaming and tagging from serialization attributes. It also enables the composition of modular specifications, allowing multiple sma
NSwag is an OpenAPI toolchain for .NET that provides a suite of generators for converting OpenAPI specifications and JSON schemas into clients, server stubs, and structured documentation. It enables the creation of type-safe client libraries and data transfer objects, as well as the generation of OpenAPI specifications by analyzing .NET controllers. The project supports contract-first API development by generating server controller stubs from specifications and offers dedicated TypeScript API integration to ensure type safety in frontend applications. It also provides tools for hosting intera
swagger-php is an OpenAPI specification generator and PHP API documentation library. It scans PHP source code attributes and annotations to produce standardized specification files and interactive API references. The tool functions as a schema inference engine that derives data types and schemas from native PHP type hints and generic blocks. It uses reflection-based static analysis to extract metadata without executing application logic and supports recursive schema inheritance to merge definitions from parent classes and interfaces. The project includes a command-line utility for exporting
springdoc-openapi is a library and toolset that analyzes Spring applications at runtime to produce machine-readable OpenAPI specifications in JSON and YAML formats. It serves as an integrator that extracts API metadata from Java source code and annotations to automate documentation for Spring-based services. The project distinguishes itself through its ability to aggregate API specifications from multiple remote microservices into a single unified interface and provide multiple visualization options, including Swagger UI and Scalar. It also offers a dedicated plugin for exporting documentatio
TypeSpec is a language for defining cloud API shapes and generating OpenAPI, JSON Schema, and client/server code from a single source of truth. It functions as a protocol-agnostic API designer that models REST, gRPC, and other API protocols using a unified, extensible syntax, with a decorator-based metadata system for attaching metadata, validation rules, and lifecycle visibility to API models and operations. The compiler produces OpenAPI 3.0 specifications and other artifacts, and the tool supports declaring API versions and tracking changes to models, properties, and operations across releas
Flasgger is a documentation framework for Flask applications that generates OpenAPI specifications and an integrated Swagger UI. It functions as a documentation generator and specification parser that extracts API schemas from route definitions, function docstrings, and external specification files. The tool allows API definitions to be maintained either within the source code using YAML blocks in docstrings or decoupled into standalone YAML files. It provides a browser-based interactive console for testing and exploring API endpoints directly from the web application. Beyond documentation,
go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and CLI code from a specification document, and can also produce a specification by scanning annotated Go source code. The project includes a static validation engine that checks documents against the schema and project-specific rules, and a specification transformation pipeline that resolves, flattens, and merges documents. The toolkit generates both client and server code from the same specification, ensuring consistency in request and response handling. It also produces a command
Swagger-jsdoc is a documentation utility that automates the creation of standardized interface specifications for web services and RESTful endpoints. It functions as a documentation builder that extracts metadata directly from source code comments and configuration files to maintain synchronized interface definitions alongside application logic. The tool parses code structures and merges disparate configuration files to produce machine-readable documentation that adheres to industry standards. By utilizing rule-based validation, it ensures that the generated output complies with formal struct
Springfox is a Java library that automatically generates OpenAPI-compliant documentation for Spring-based REST services. It scans Spring controller annotations and model classes at runtime to produce machine-readable API specifications, and bootstraps an interactive Swagger UI interface on application startup for browsing and testing documented endpoints. The project provides a migration path from Swagger 2 to OpenAPI 3, replacing legacy annotations and dependencies with OpenAPI 3 equivalents through a starter dependency and configuration change. It integrates with Spring's application contex
This project is an automated documentation generator that synchronizes API reference materials with actual code behavior. By capturing live HTTP request and response data during the execution of existing test suites, it ensures that documentation remains accurate and consistent with the underlying application. The tool distinguishes itself by integrating directly into the test runner lifecycle, allowing developers to define API specifications and metadata within their test blocks. This approach enables a test-driven documentation workflow where API behavior is recorded and mapped to structure
APIStar is an OpenAPI framework providing a toolkit for building and verifying web APIs. It functions as an API schema validator, a traffic auditor, and a documentation generator to ensure compliance with API specifications and data types. The project converts OpenAPI and Swagger schemas into visual developer guides using customizable themes. It also implements a dynamic API client that adapts to defined schemas to send requests to remote servers. The framework includes capabilities for validating API schemas to identify structural mistakes and auditing incoming and outgoing web traffic agai
RAML is a declarative YAML-based specification language used for modeling RESTful interfaces and data structures. It functions as a contract-first API framework and modeling standard, establishing a formal agreement for service communication and a single source of truth before implementation begins. The specification enables the automation of functional mock servers and the generation of language-specific client SDKs directly from the definition files. It supports a modular approach to API design through the use of external libraries, overlays for extending contracts, and reusable traits and
AsyncAPI is a machine-readable specification standard for defining and documenting event-driven interfaces and asynchronous message-based architectures. It provides a unified framework for modeling the structure of distributed systems, including the definition of servers, channels, messages, and operations. The specification distinguishes itself by utilizing a protocol-agnostic design layer, which separates core interface definitions from transport-specific configurations. This allows developers to maintain a single source of truth while accommodating the unique requirements of diverse messag
api-blueprint is a markdown-based API design language and specification standard used to define the structure, behavior, and data schemas of HTTP web services. It provides a formal method for mapping HTTP methods to resources and defining payload validation rules through a machine-readable syntax. The project functions as a blueprint for creating interactive technical documentation and functional mock servers. These tools transform design specifications into human-readable guides and simulated backend environments to enable integration testing before implementation. The language covers API m
This project is a REST-to-gRPC API gateway and JSON reverse proxy that translates RESTful HTTP requests into gRPC service calls. It functions as a protocol buffer proxy generator, providing the tools necessary to bridge JSON-based HTTP traffic with backend gRPC servers. The system distinguishes itself by automating the creation of reverse-proxy servers and stubs through protobuf-driven code generation. It also includes a dedicated OpenAPI specification generator that produces OpenAPI v2 and v3 documents from gRPC service definitions and annotations. The project covers a broad range of integr
Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments. The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
Connexion is a specification-driven framework for building APIs that automatically maps OpenAPI specifications to application logic. It uses these specifications to automate routing, request validation, and response serialization, linking API operations to backend handler functions via operation IDs. The project differentiates itself by providing a schema-driven mock server that simulates API behavior using example responses from the specification without requiring backend logic. It also includes a dynamic documentation hosting system that translates the API specification into a live interact
Showdoc is a technical documentation platform and knowledge management system designed to centralize project specifications, internal manuals, and technical guides. Built as a PHP web application, it provides a collaborative environment for teams to organize and share information across software development organizations. The platform distinguishes itself through its ability to automate documentation workflows by parsing source code comments and synchronizing technical records with the current state of a codebase. It also features specialized tools for managing RESTful API documentation and g
Swag is a documentation tool for Go that generates standardized API specification files by parsing declarative annotations within source code. It functions by analyzing source files to extract metadata from comments and function signatures, transforming them into machine-readable formats such as JSON or YAML. This process ensures that technical documentation remains synchronized with the underlying code structure throughout the development lifecycle. The tool distinguishes itself through its ability to perform static source code parsing and type-system reflection, which allows it to map compl
Postcat is an integrated platform for API design and documentation, serving as a REST API client and a mock server. It provides a workspace to define technical requirements and data schemas, allowing development teams to align on interface behavior. The platform features a plugin architecture that enables the integration of third-party tools and custom capabilities. It decouples frontend and backend development cycles by generating simulated server responses based on predefined data structures. The toolset includes an environment management system for switching between development, staging,
Hug is a type-driven Python web framework designed for building APIs. It uses Python type annotations to automatically validate and convert incoming request data and to format outgoing responses. The framework functions as an automated documentation tool by extracting function signatures and markers from source code to generate accessible API specifications. It also supports non-blocking coroutines for asynchronous API processing to handle background tasks without interrupting the main request cycle. The project provides capabilities for REST API development, including route mapping, endpoin
openapi-devtools is a browser extension and OpenAPI specification generator that captures network traffic to automatically document the API structures of websites and applications. It functions as an HTTP traffic capturer and browser-based documentation tool, mapping real-time network requests into standardized API specifications. The tool enables API reverse engineering by intercepting outbound HTTP traffic and using heuristic-based merging to combine headers, bodies, and parameters from multiple requests into unified endpoint definitions. These captured definitions can be visualized as huma
This framework serves as a bridge between backend services and AI agents by implementing the Model Context Protocol. It enables developers to expose existing application logic and web endpoints as standardized tools, allowing AI models to discover, interact with, and execute backend functions through a unified interface. The project distinguishes itself by automatically converting application request and response models into protocol-compliant schemas, ensuring that AI agents receive accurate functional context. It supports a transport-agnostic architecture that facilitates real-time bidirect
openapi-typescript is an OpenAPI TypeScript type generator and schema transformer. It converts JSON or YAML OpenAPI specification files into static TypeScript type definitions to provide end-to-end API type safety. The tool functions as a static type generator that transforms external API definitions into interfaces and types. It focuses on zero-runtime type enforcement, ensuring that data consistency is maintained via the TypeScript type system without adding overhead to production bundles. The project covers API type safety and schema conversion, facilitating the validation of request bodi
Goa is a design-first Go framework that generates server and client code, documentation, and request validation from a single declarative domain-specific language (DSL). At its core, it provides a Go DSL for defining API endpoints, data types, and error models, which compiles into fully functional HTTP and gRPC server stubs, client packages, and OpenAPI specifications. The framework distinguishes itself through its plugin-extensible code generation pipeline, allowing custom code generation steps, middleware, or transport layers to be added via plugins. It supports multiple transport protocols
This project provides a comprehensive architectural framework and set of standardized patterns for building, securing, and scaling production-ready Node.js applications. It serves as a foundational guide for establishing consistent development workflows, operational observability, and reliable service integration across distributed software systems. The framework distinguishes itself by emphasizing a schema-first approach to API development, ensuring that interface definitions drive the creation of server stubs, client libraries, and type definitions. It promotes a cloud-native posture by int
API Platform is a headless content management system engine and framework used to build REST and GraphQL APIs. It utilizes schema-driven generation to automatically produce web endpoints based on predefined data model definitions. The platform focuses on semantic data modeling, using structured classes and ontologies to ensure information is organized for search engines and semantic web tools. It provides an automated OpenAPI specification generator and a declarative system for creating administration dashboards to manage data records without custom frontend code. The system includes capabil
This project is a comprehensive guide and collection of best practices for testing Node.js backend applications. It provides a curated set of patterns and reference examples for writing reliable unit, integration, and component tests. The project distinguishes itself through specific strategies for backend integration, including detailed methods for API contract testing against OpenAPI specifications and shared schemas. It offers specialized guidance on managing message queue testing, focusing on idempotency, resilience, and asynchronous event synchronization. The guide covers a broad range
Fern is a toolset for managing API specifications, generating type-safe client libraries, and producing hosted developer documentation. It provides a utility for validating, transforming, and exporting API definitions into standardized OpenAPI formats, serving as a system to maintain a consistent source of truth for API designs. The project differentiates itself through an automated SDK distribution pipeline that publishes generated libraries to package managers such as npm, PyPI, Maven, and NuGet. It also includes an AI-powered search assistant trained on API and SDK specifications to answer