23 个仓库
Frameworks for building structured HTTP endpoints that process request parameters and return serialized data.
Distinct from API Development: The candidates focus on specific interfaces, references, or list aggregations rather than the framework capability for API development.
Explore 23 awesome GitHub repositories matching web development · REST API Frameworks. Refine with filters or upvote what's useful.
FastAPI is a high-performance Python web framework designed for building REST APIs. It operates as an ASGI web framework, providing a system to create structured HTTP endpoints that automatically serialize data and validate request parameters. The framework utilizes Python type hints to drive data validation and serialization, automatically generating machine-readable OpenAPI and JSON Schema specifications. This process enables the automatic creation of interactive, browser-based API documentation where endpoints can be tested directly. The project includes a dependency injection system for
Provides a high-performance framework for building structured REST APIs with automatic serialization and validation.
Hapi is a configuration-driven web framework for building secure and scalable HTTP servers and APIs on the Node.js runtime. It functions as a REST API development framework and an enterprise server implementation focused on stability, security, and comprehensive input validation. The framework is built around a plugin-based architecture, allowing core functionality and custom logic to be organized into modular, registerable plugins. It serves as an HTTP request lifecycle manager, enabling the interception and modification of requests through pre-handlers and extensions before they reach the f
Provides a structured system for mapping HTTP routes to handlers with built-in payload processing and input validation.
Play is a full-stack reactive web framework for Java and Scala. It provides a comprehensive development platform for building scalable web applications and RESTful APIs using a stateless and non-blocking architecture designed for high concurrency. The framework emphasizes high-velocity development through dynamic code reloading, which allows developers to update applications and verify changes without performing a full restart. Its capability surface covers the construction of JSON-based web endpoints, server-side logic for the JVM, and the implementation of scalable web architectures.
Ships a specialized REST API framework for building JSON-based web endpoints and services.
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
Offers a declarative Ruby framework for building structured HTTP endpoints that handle parameter validation and data serialization.
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
Acts as a comprehensive framework for building structured RESTful endpoints within Laravel and Lumen applications.
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
Provides a comprehensive framework for building and exposing structured REST and GraphQL APIs with built-in validation.
Javalin is a lightweight web framework for Java and Kotlin designed for building REST APIs and web applications. It functions as an embedded Jetty web server, allowing applications to run as standalone processes without the need for an external servlet container. The project provides specialized frameworks for diverse communication patterns, including a REST API framework with automatic OpenAPI schema generation, a GraphQL API framework with query and mutation resolvers, and a WebSocket server for bidirectional real-time communication. It also includes a dedicated framework for pushing real-t
Provides a framework for building structured HTTP endpoints that process parameters and return serialized data.
Crow is a minimalist C++ micro web framework designed for building fast web servers and REST APIs. It provides a lightweight toolkit for web development in C++, offering core routing and request handling capabilities. The framework includes a built-in JSON parser for converting strings into structured data and an HTML template engine for generating dynamic web pages on the server. It also functions as a WebSocket server library to enable bidirectional, real-time communication between servers and web clients. Additional capabilities include a middleware-based request pipeline for executing sh
Provides a framework for building structured HTTP endpoints that return serialized JSON data for REST APIs.
Kitura is a server-side web framework for building HTTP services and web applications using the Swift programming language. It functions as an HTTP server that handles incoming requests, routes traffic, and serves responses. The framework serves as a Codable REST API framework, enabling the encoding and decoding of native Swift data types for web service communication. It also provides a FastCGI web interface to connect Swift applications to external web servers for improved scalability. The system includes capabilities for secure web communication through SSL/TLS network encryption, server-
Provides a framework for building REST APIs that process request parameters and return serialized Swift data.
Lumen 是一个 PHP 微框架和 REST API 框架,专为构建高性能 Web 应用和轻量级服务而设计。它为开发处理特定业务逻辑的独立小型 Web 服务提供了一个精简的环境。 该框架专注于微服务开发和无状态 Web 端点的创建。它提供了一个最小化的架构,以减少构建高性能后端服务和快速 Web API 原型时的运营开销。 该系统通过中间件合并了请求分发和过滤,利用服务容器进行依赖注入,并采用了引导式的应用生命周期。它采用静态代理接口并遵循标准化的 HTTP 消息传递。
Provides a specialized framework for building structured HTTP endpoints that process requests and return serialized data.
Hertz is a high-performance Go HTTP framework designed for building scalable microservices, RESTful APIs, and AI applications. It functions as a high-performance web server and a communication framework for microservices, utilizing non-blocking I/O and zero-copy memory management to handle high-concurrency traffic. The project distinguishes itself through a microservices communication toolkit that supports high-efficiency remote procedure calls via gRPC and Thrift protocols. It implements an asynchronous middleware engine based on an onion model, allowing for a pluggable request-response pipe
Provides a framework for mapping HTTP routes to handlers with integrated request validation and automated Swagger documentation.
Eve is a REST API framework that maps database collections to web resources through declarative configuration files. It functions as a database-to-API mapper, automatically exposing data as RESTful endpoints with built-in support for CRUD operations and schema-based request validation. The project distinguishes itself through a HATEOAS API engine that generates hypermedia links and resource schemas for dynamic client discovery. It also includes an automated Swagger documentation generator that produces interactive specifications for client SDK generation and testing. The framework provides a
Provides a framework for building RESTful web services by mapping database collections to endpoints via declarative configuration.
A light-weight REST API development framework for ASP.NET 8 and newer.
Provides a framework for building REST APIs using the REPR pattern with minimal boilerplate.
ASP.NET Core MVC 是一个用于在 .NET 生态系统中构建动态网站和 Web API 的模型-视图-控制器框架。它提供了一个服务端架构,将数据逻辑、用户界面渲染和请求处理分离开来,以保持应用层之间的边界。 该框架包括一个用于将代码嵌入 HTML 页面以生成动态 Web 内容的 Razor 模板引擎。它还作为一个 RESTful Web API 框架,用于创建通过标准化网络接口向客户端交付结构化数据的可扩展 HTTP 服务。 该系统通过中间件流水线管理请求处理,并使用基于操作的路由将传入的 HTTP 请求映射到特定的控制器方法。它还通过模型绑定、依赖注入容器和服务端 Web 托管选项支持应用开发。
Provides a framework for building structured HTTP endpoints that process parameters and return serialized data.
wger is an open-source web application for fitness tracking, workout planning, and nutrition management. It provides a self-hosted platform where users can design weekly workout routines from a built-in exercise library, log their training progress, and plan daily meals using a food database with automatic nutritional calculations. The application supports multi-user accounts with credential-based login, passkey authentication, and third-party sign-in through OAuth providers. The platform includes a documented REST API that enables programmatic access to workout logs, meal plans, and user dat
Exposes data through a browsable REST API built with Django REST Framework.
Tide 是一个用于 Rust 编程语言的异步 Web 服务器框架和 HTTP 工具包。它提供了一个系统,利用非阻塞 I/O 和异步运行时构建高并发网络应用程序和 REST API。 该框架以基于中间件的请求管道为核心,允许开发者通过可插拔的逻辑层拦截和处理 HTTP 请求与响应。它支持分层路由树,将端点组织成共享公共路径前缀和作用域中间件的嵌套组。 功能领域包括通过 WebSocket 和服务器发送事件 (SSE) 进行实时通信,以及通过静态文件服务和动态模板渲染进行内容交付。该框架还处理 JSON 负载、GraphQL 查询、多部分文件上传,以及全局应用程序状态和用户会话的管理。 安全性通过网络流量的 TLS 加密和受保护资源的身份验证提供支持。
Offers a framework for defining hierarchical routes and handling serialized data for REST services.
django-filter 是一个用于过滤 Django QuerySets 的库,通过使用声明性语法将 URL 参数映射到数据库查找。它作为模型过滤器生成器和数据库查找工具,将请求参数转换为查询以优化数据结果。 该项目支持基于模型字段定义自动生成搜索过滤器和用户界面表单。它通过自定义查找方法、关系路径和全文搜索集成支持高级检索逻辑,同时提供用于在 REST API 端点内优化结果的系统。 其功能面包括创建交互式过滤表单、渲染过滤后的列表视图,以及使用工厂函数进行动态过滤器集实例化。该系统还处理布尔值、UUID 和 ISO 8601 时间戳的特定类型过滤,以及使用经过身份验证的用户身份进行基于请求的过滤。
Adds powerful search and filter capabilities to REST API endpoints for refined data retrieval.
routing-controllers 是一个用于 TypeScript 的声明式 API 路由器和 Web 框架控制器。它提供了一个系统,用于使用基于类的装饰器和元数据定义 HTTP 路由和请求处理逻辑,从而将 API 端点组织成结构化的架构。 该项目利用基于适配器的服务器集成将路由逻辑与底层 Web 框架解耦,为 Express 和 Koa 提供了特定的集成。它具有一个基于反射的类型转换系统,可验证传入的请求参数并将其转换为类型化的类实例。 功能面涵盖了完整的请求-响应管道,包括中间件执行、响应拦截和全局错误管理。它支持高级路由实用程序,如全局路由前缀、基于文件系统的组件发现和依赖注入集成。其他功能包括基于角色的访问控制、已验证用户注入以及用于文件上传和响应流的专门处理程序。
Provides a declarative system for building JSON APIs with automated response formatting and input validation.
本项目是一个用于 Laravel 应用程序的 Eloquent 查询构建器封装器和 REST API 查询解析器。它将 HTTP 请求参数转换为数据库查询,为 API 端点提供动态过滤、排序和关系加载。 该系统通过基于别名的模式抽象将外部 API 接口与存储层解耦,允许公共字段名映射到私有数据库列。它支持嵌套关系的动态包含和聚合计数,以及通过可调用类和闭包为过滤器和排序执行自定义程序逻辑。 功能覆盖面包括通过字段选择进行数据投影,以及基于请求参数的结果排序。它进一步提供了使用点符号进行基于关系的过滤的机制,与本地模型作用域的集成,以及对软删除记录可见性的控制。
Maps URL query strings to database constraints to provide dynamic data filtering for API endpoints.
Huma is an OpenAPI REST framework for Go designed for building HTTP services with automatic OpenAPI 3.1 specification generation and JSON Schema validation. It serves as a toolkit for developing REST and RPC APIs with typed inputs and outputs, deriving interactive documentation directly from the source code. The framework distinguishes itself by automating the synchronization between implementation and documentation. It uses a content-negotiation engine to manage multiple serialization formats via client headers and employs a JSON Schema input validator to automatically verify request paramet
Offers a structured framework for building HTTP endpoints with native support for request parameters, bodies, and response headers.