awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
RicoSuter avatar

RicoSuter/NSwag

0
View on GitHub↗
7,342 stars·1,354 forks·C#·MIT·13 viewsNSwag.org↗

NSwag

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 interactive API documentation and specifications to create a browsable map of available service endpoints.

The toolset includes capabilities for code generation, specification management, and HTTP traffic interception. It provides a command-line interface for build pipeline integration, a GUI for managing configurations, and support for defining security schemes such as OAuth2, API keys, and JWT bearer tokens.

The toolchain can be executed via a command-line interface or package manager using configuration-driven workflows stored in JSON files.

Features

  • OpenAPI Toolchains - Provides an integrated tool suite for generating OpenAPI specifications and synthesizing client and server code for .NET.
  • API Client Generators - Provides tools to automatically generate type-safe client code from OpenAPI specifications to ensure consistent data structures.
  • Server Stub Generation - Creates boilerplate server-side code and routing logic from API specifications to enable contract-first development.
  • API Code Generators - Automatically produces server stubs and controller classes from API interface definitions.
  • API-First Development Toolsets - Offers a comprehensive toolset for defining API contracts and generating the corresponding server and client boilerplate.
  • OpenAPI Specification Generators - Generates structured OpenAPI documentation from .NET controllers to define data contracts for external consumers.
  • Template-Based Code Generators - Uses predefined patterns to transform API specifications into typed client libraries and server controller stubs.
  • OpenAPI Specification Extraction - Analyzes .NET assembly types and controller attributes at runtime to automatically extract and produce OpenAPI specifications.
  • Schema-to-Type Mappers - Automates the creation of typed data models by converting JSON schema definitions into native language classes.
  • Type-Safe Client Generators - Produces type-safe client libraries and data transfer objects from an OpenAPI specification.
  • API Documentation Hosting - Hosts interactive OpenAPI documentation and specifications to provide a browsable map of available service endpoints.
  • OpenAPI to TypeScript Converters - Transforms OpenAPI specifications into type-safe TypeScript client libraries and interfaces for frontend integration.
  • OpenAPI CLI Management Tools - Offers a command-line interface to export OpenAPI documents based on configuration files for automated workflows.
  • OpenAPI Specification Parsers - Parses OpenAPI JSON and YAML definitions from URLs or strings into structured internal representations.
  • Toolchain Execution Engines - Executes complex specification and code generation sequences through a command-line interface or package manager.
  • Build Pipeline Integrations - Provides command-line tools that can be integrated into build pipelines to keep clients and specs synchronized.
  • Middleware-Based Request Pipelines - Provides a modular pipeline to intercept and modify outgoing HTTP requests and incoming responses for logging and error handling.
  • HTTP Authentication Schemes - Defines authentication requirements for API operations using standard schemes like OAuth2, API Keys, and JWT Bearer tokens.
  • Configuration Workflows - Implements an architectural pattern where generation tasks are defined and executed via structured JSON configuration files.
  • Generator Configuration Tools - Provides a visual GUI for managing and customizing the settings of the code generation engine.
  • Schema-to-Code Generators - Generates typed source code implementations from declarative JSON schema definitions to automate data model creation.
  • API Documentation - Provides interactive interfaces for exploring and testing backend service endpoints through hosted OpenAPI documentation.
  • API Endpoint Metadata - Allows attachment of structural and descriptive metadata to routes via attributes for API documentation.
  • OpenAPI Response Definitions - Generates JSON schemas for data objects and specifies response types to document the API data contract.
  • Configuration-Driven Generators - Automates the generation process using predefined instructions stored in JSON configuration documents.
  • OpenAPI Specification Generators - Automatically derives OpenAPI specifications from .NET assembly types and controller metadata.
  • Core .NET Libraries - Toolchain for OpenAPI generation and client code creation.

Star history

Star history chart for ricosuter/nswagStar history chart for ricosuter/nswag

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to NSwag

Similar open-source projects, ranked by how many features they share with NSwag.
  • rsuter/nswagRSuter avatar

    RSuter/NSwag

    7,342View on GitHub↗

    NSwag is a toolchain for the .NET ecosystem designed to automate the generation of API documentation, server controllers, and typed client proxies from OpenAPI contracts. It functions as a contract-first API tool that enables the creation of server-side boilerplate and client libraries based on predefined specifications. The suite distinguishes itself through its ability to extract OpenAPI specifications from existing ASP.NET Core code via reflection and its capacity to generate type-safe TypeScript client proxies. It also provides an interactive documentation server that hosts and renders th

    C#
    View on GitHub↗7,342
  • domaindrivendev/swashbuckle.aspnetcoredomaindrivendev avatar

    domaindrivendev/Swashbuckle.AspNetCore

    5,492View on GitHub↗

    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

    C#
    View on GitHub↗5,492
  • microsoft/typespecmicrosoft avatar

    microsoft/typespec

    5,781View on GitHub↗

    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

    Javajson-schemaopenapi3protobuf
    View on GitHub↗5,781
  • juhaku/utoipajuhaku avatar

    juhaku/utoipa

    3,682View on GitHub↗

    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

    Rustauto-generatedcompile-timedocumentation
    View on GitHub↗3,682
See all 30 alternatives to NSwag→

Frequently asked questions

What does ricosuter/nswag do?

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.

What are the main features of ricosuter/nswag?

The main features of ricosuter/nswag are: OpenAPI Toolchains, API Client Generators, Server Stub Generation, API Code Generators, API-First Development Toolsets, OpenAPI Specification Generators, Template-Based Code Generators, OpenAPI Specification Extraction.

What are some open-source alternatives to ricosuter/nswag?

Open-source alternatives to ricosuter/nswag include: rsuter/nswag — NSwag is a toolchain for the .NET ecosystem designed to automate the generation of API documentation, server… domaindrivendev/swashbuckle.aspnetcore — Swashbuckle.AspNetCore is an API specification tool and documentation generator for ASP.NET Core. It extracts metadata… microsoft/typespec — TypeSpec is a language for defining cloud API shapes and generating OpenAPI, JSON Schema, and client/server code from… juhaku/utoipa — utoipa is a Rust API documentation tool used to generate machine-readable OpenAPI specifications. It functions as a… oapi-codegen/oapi-codegen — oapi-codegen is an OpenAPI specification compiler and code generator for Go. It transforms OpenAPI definitions into… orval-labs/orval — Orval is an OpenAPI-to-TypeScript code generator that produces fully typed API clients, data-fetching hooks, mock…