114 repositorios
Frameworks and tools for building, documenting, and consuming web APIs.
Explore 114 awesome GitHub repositories matching part of an awesome list · API Development. Refine with filters or upvote what's useful.
Hoppscotch is an open-source API development ecosystem designed for building, testing, and debugging REST, GraphQL, and real-time APIs. It provides a unified platform that functions across web browsers, desktop applications, and command-line interfaces, allowing developers to manage the entire API lifecycle from a single environment. The platform distinguishes itself through a highly interactive, command-driven interface that utilizes a global spotlight palette and keyboard shortcuts to streamline complex workflows. It supports advanced request manipulation and validation by executing JavaScr
Lightweight, open-source tool for API design and testing.
Bruno is a local-first API client designed for building, testing, and managing network requests across a wide range of protocols. By storing all collections and configurations as plain-text files directly on the local filesystem, it enables native version control and offline access, ensuring that project data remains under user control without requiring cloud synchronization. The platform distinguishes itself through a declarative approach to API management, utilizing a domain-specific language to define request parameters and metadata. This architecture supports a robust testing environment
Offline-first, Git-friendly API client for testing and debugging.
Insomnia is a desktop application designed for the design, testing, and debugging of network requests. It serves as a comprehensive environment for managing the API lifecycle, allowing users to draft interface specifications, simulate endpoints, and execute automated testing workflows within continuous integration pipelines. The platform distinguishes itself through a modular, plugin-based architecture that enables the integration of custom scripts and external tools. It supports complex development needs by providing a local-first data persistence model, environment-variable substitution for
Cross-platform client for REST and GraphQL API development.
Django REST Framework is a toolkit for building standards-compliant web services that map complex data models to structured HTTP responses. It provides a modular architecture for handling the request lifecycle, including authentication, permission checks, and content negotiation. The framework is designed to facilitate the development of robust APIs by transforming complex data types into native formats and validating incoming request payloads against defined schemas. The project distinguishes itself through a highly modular, class-based design that allows developers to build complex views an
Standard toolkit for building Web APIs.
Swagger UI is an OpenAPI specification renderer and documentation interface that transforms JSON or YAML API definitions into a navigable, searchable website. It functions as an OpenAPI documentation UI and request client, providing a visual catalog for exploring endpoints and sending live HTTP requests to a server using a schema-defined interface. The project distinguishes itself through a plugin-based extension system and a schema-driven UI generation model. This architecture allows for the injection of custom components, state selectors, and helper functions to modify core behavior and lay
Displays generated API documentation.
This project is a command-line tool and template-based scaffolding engine that transforms API interface specifications into functional client libraries and server stubs. By automating the creation of type-safe SDKs and boilerplate code, it bridges the gap between service definitions and implementation, allowing developers to maintain synchronized codebases across many programming languages. The tool distinguishes itself through a portable execution model that utilizes containerized build isolation to ensure identical output regardless of the host environment. It features a modular, plugin-bas
Generates API clients and server stubs from specifications.
This project is a cloud API governance framework and enterprise style guide. It provides a centralized set of naming and structural rules and design guidelines for RESTful interfaces to maintain architectural consistency across large-scale distributed services. The framework establishes standards for OpenAPI specifications to ensure a uniform developer experience. It also defines a versioning policy to manage service updates and prevent breaking changes for existing client integrations. The guidelines cover resource-oriented design patterns, schema-based constraint validation, and standardiz
Standardized practices for designing consistent and usable web APIs.
Yaak is a cross-platform desktop client and command-line utility designed for developing, testing, and debugging API endpoints. It supports multi-protocol request execution for REST, GraphQL, and gRPC services, providing a unified environment for managing network interactions, authentication credentials, and automated testing workflows. The tool distinguishes itself through a local-first architecture that stores all workspace configurations and request definitions directly on the filesystem. This design enables native integration with version control systems like Git, allowing teams to track
Offline API tester supporting HTTP, GraphQL, and WebSockets.
This project is a high-performance, distributed API gateway designed to manage, secure, and observe traffic for microservices, serverless functions, and artificial intelligence model providers. It functions as a dynamic service proxy and cloud-native ingress controller, centralizing policy enforcement and traffic routing through a unified configuration interface that synchronizes state across multiple nodes in real time. The platform distinguishes itself through a highly extensible architecture that utilizes a high-performance scripting engine to execute modular logic directly within the requ
Cloud-native gateway for managing and securing API traffic.
Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring
Listed in the “API Development” section of the Awesome Mac awesome list.
Grape is a RESTful web service framework for Ruby designed for building structured APIs. It provides a declarative syntax for routing and parameter validation, allowing developers to map HTTP verbs to logic through a domain specific language. The framework is distinguished by its built-in support for service versioning, which can be managed via URL paths, custom headers, or request parameters. It also features a modular architecture that allows large services to be constructed by nesting smaller API definitions. The project covers comprehensive API lifecycle capabilities, including schema-dr
Microframework for creating RESTful APIs.
RestSharp is a .NET HTTP client library designed for interacting with RESTful web services. It provides a high-level request wrapper and a dedicated REST API client to manage endpoints, headers, and query parameters. The library includes a serialization mechanism that automatically converts objects to and from JSON or XML formats for API payloads. It also features a system for managing API credentials and security tokens to ensure authorized access to protected remote resources. The toolkit covers broad capabilities for external web service integration, including generic type-based deseriali
Simple and widely used HTTP client for .NET.
This is a framework for building standardized RESTful APIs within Laravel and Lumen applications. It provides a structured environment for developing web services with integrated routing, request handling, and versioning. The project distinguishes itself through a multi-adapter authentication system that validates identities via various schemes and third-party providers. It features a dedicated response transformation layer to convert raw database models into consistent output structures and an internal dispatcher that allows application logic to trigger API endpoints without external network
Toolkit for building RESTful APIs with versioning and rate limiting.
Mockoon is an HTTP API simulation platform and design tool used to create fake API endpoints that simulate server responses without a backend. It functions as an OpenAPI mock server tool and a JSON API mocking utility, allowing for the rapid iteration of API contracts and the generation of response templates. The project distinguishes itself through a combination of stateful mocking, using a local JSON database to simulate CRUD operations, and the ability to run as a headless API mock server via a command line interface. It supports real-time collaborative editing and AI-assisted prototyping
Desktop tool for creating and testing mock REST APIs.
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
Toolchain for OpenAPI generation and client code.
Listed in the “API Development” section of the Awesome Mac awesome list.
GraphQL.NET es un framework del lado del servidor para construir y ejecutar APIs de GraphQL dentro de aplicaciones C#. Proporciona un toolkit integral para la construcción de esquemas, un motor federado para grafos de datos distribuidos y un manejador de suscripciones para gestionar flujos de datos en tiempo real. El proyecto se distingue por un constructor de esquemas flexible que admite tanto definiciones programáticas code-first como enfoques declarativos schema-first utilizando el lenguaje de definición de esquemas estándar. Incluye un motor de federación dedicado para dividir grafos de datos en subgrafos y componerlos en una puerta de enlace unificada, así como una implementación de cargador de datos (data loader) diseñada específicamente para resolver el problema de consultas N+1 mediante procesamiento por lotes y caché. El framework cubre una amplia gama de capacidades operativas, incluyendo la integración de inyección de dependencias para la gestión del ciclo de vida de los servicios, pipelines de middleware para la interceptación de resolución de campos y un pipeline de ejecución optimizado con tipos de valor para reducir las asignaciones de memoria. También proporciona herramientas para el análisis de complejidad de consultas, caché de documentos y control de acceso basado en roles para asegurar los endpoints de la API. La compatibilidad con la compilación de esquemas ahead-of-time permite que el framework se ejecute en entornos que prohíben la generación dinámica de código.
Core GraphQL implementation for the .NET ecosystem.
HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP. It provides code-first schema generation directly from C# classes and attributes, keeping the schema and business logic in sync without manual type definitions. The project also includes a GraphQL gateway that composes multiple GraphQL and REST endpoints into a single unified schema, along with a GraphQL IDE for exploring, testing, and debugging GraphQL APIs interactively. The project distinguishes itself through its comprehensive tooling ecosystem, which includes a GraphQL c
Feature-rich GraphQL server for .NET.
django-cors-headers es un middleware para Django que gestiona las cabeceras de Intercambio de Recursos de Origen Cruzado (CORS) para controlar qué dominios externos pueden acceder a los recursos del servidor. Sirve como un componente de seguridad para aplicar políticas de control de acceso mediante la validación de origen y la gestión de cabeceras. El proyecto proporciona capacidades para listas blancas de origen utilizando nombres de host o expresiones regulares y admite la especificación de Acceso a Red Local para permitir solicitudes desde redes privadas. Permite un control granular mediante restricciones basadas en rutas y validación de origen dinámica impulsada por un sistema de señales. El software cubre áreas más amplias de seguridad y rendimiento, incluyendo la gestión de credenciales, el filtrado de solicitudes y el control de exposición de cabeceras de respuesta. También gestiona la coordinación de caché añadiendo el origen a la cabecera 'vary' para evitar colisiones de contenido entre diferentes solicitudes de origen cruzado.
Handle Cross-Origin Resource Sharing for decoupled frontends.
Swashbuckle.AspNetCore es una herramienta de especificación de API y generador de documentación para ASP.NET Core. Extrae metadatos del código fuente y modelos para producir especificaciones OpenAPI estandarizadas e interfaces de navegador interactivas para explorar y probar APIs web. El proyecto integra un componente de middleware para servir estas especificaciones y una Swagger UI para pruebas interactivas de API directamente desde una aplicación en ejecución. También proporciona un exportador de línea de comandos para extraer archivos de especificación de ensamblados de aplicaciones para su uso en pipelines de CI/CD. La herramienta cubre una amplia gama de capacidades, incluyendo la gestión de esquemas para tipos complejos, anotación de metadatos mediante atributos y comentarios XML, y configuración de seguridad para OAuth 2.0 y claves API. Soporta además la gestión de contratos de API, versionado de especificaciones y pipelines de generación personalizables para filtrar o modificar operaciones.
Integrates Swagger documentation into Web API projects.