114 dépôts
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 est un framework côté serveur pour construire et exécuter des API GraphQL au sein d'applications C#. Il fournit une boîte à outils complète pour la construction de schémas, un moteur fédéré pour les graphes de données distribués et un gestionnaire d'abonnements pour gérer les flux de données en temps réel. Le projet se distingue par un constructeur de schéma flexible qui prend en charge à la fois les définitions programmatiques code-first et les approches déclaratives schema-first utilisant le langage de définition de schéma standard. Il inclut un moteur de fédération dédié pour diviser les graphes de données en sous-graphes et les composer en une passerelle unifiée, ainsi qu'une implémentation de chargeur de données (data loader) spécifiquement conçue pour résoudre le problème de requête N+1 via le traitement par lots et la mise en cache. Le framework couvre un large éventail de capacités opérationnelles, notamment l'intégration de l'injection de dépendances pour la gestion du cycle de vie des services, des pipelines de middleware pour l'interception de la résolution de champs, et un pipeline d'exécution optimisé avec des types de valeur pour réduire les allocations mémoire. Il fournit également des outils pour l'analyse de la complexité des requêtes, la mise en cache des documents et le contrôle d'accès basé sur les rôles pour sécuriser les endpoints de l'API. La prise en charge de la compilation de schéma en avance de phase (ahead-of-time) permet au framework de s'exécuter dans des environnements qui interdisent la génération de code dynamique.
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 est un middleware pour Django qui gère les en-têtes de partage de ressources entre origines (CORS) pour contrôler quels domaines externes peuvent accéder aux ressources du serveur. Il sert de composant de sécurité pour appliquer des politiques de contrôle d'accès via la validation d'origine et la gestion des en-têtes. Le projet fournit des capacités pour la liste blanche d'origines utilisant des noms d'hôtes ou des expressions régulières et prend en charge la spécification Local Network Access pour autoriser les requêtes provenant de réseaux privés. Il permet un contrôle granulaire via des restrictions basées sur le chemin et une validation d'origine dynamique pilotée par un système de signaux. Le logiciel couvre des domaines plus larges de sécurité et de performance, notamment la gestion des identifiants, le filtrage des requêtes et le contrôle de l'exposition des en-têtes de réponse. Il gère également la coordination du cache en ajoutant l'origine à l'en-tête vary pour éviter les collisions de contenu entre différentes requêtes inter-origines.
Handle Cross-Origin Resource Sharing for decoupled frontends.
Swashbuckle.AspNetCore est un outil de spécification d'API et un générateur de documentation pour ASP.NET Core. Il extrait les métadonnées du code source et des modèles pour produire des spécifications OpenAPI standardisées et des interfaces de navigateur interactives pour explorer et tester les API web. Le projet intègre un composant middleware pour servir ces spécifications et une interface Swagger UI pour le test d'API interactif directement depuis une application en cours d'exécution. Il fournit également un exportateur en ligne de commande pour extraire les fichiers de spécification des assemblages d'application pour une utilisation dans les pipelines CI/CD. L'outil couvre un large éventail de capacités incluant la gestion de schéma pour les types complexes, l'annotation de métadonnées via des attributs et des commentaires XML, et la configuration de sécurité pour OAuth 2.0 et les clés API. Il prend en outre en charge la gestion de contrat d'API, le versionnage de spécification et des pipelines de génération personnalisables pour filtrer ou modifier les opérations.
Integrates Swagger documentation into Web API projects.