29 个仓库
Reusable structural templates and organizational strategies for building and routing service communication endpoints.
Explore 29 awesome GitHub repositories matching software engineering & architecture · API Patterns. Refine with filters or upvote what's useful.
This repository is a comprehensive collection of data structures and algorithms implemented in JavaScript, designed primarily as an educational resource for computer science study and technical interview preparation. It provides modular implementations of fundamental programming concepts, allowing developers to explore algorithmic logic and data organization through self-contained, verifiable code examples. The library distinguishes itself by pairing every implementation with formal Big O notation, providing predictable insights into time and space scaling requirements. Each algorithm is stru
Uses consistent input and output patterns across all algorithmic implementations to facilitate seamless comparison.
Immich is a self-hosted media management platform designed to provide a centralized, private repository for photos and videos. It functions as a comprehensive system for organizing, backing up, and viewing personal media collections across mobile devices, web browsers, and external storage locations. By maintaining full control over data ownership and storage infrastructure, the platform ensures that users retain sovereignty over their digital assets. The system distinguishes itself through a distributed architecture that coordinates background media synchronization, real-time filesystem moni
Routes incoming network requests to specific backend operations using a structured interface to perform standard data management tasks.
OpenCV is a comprehensive computer vision library designed for real-time performance and cross-platform deployment. It provides a native execution environment that leverages multi-threaded operations and automated memory management to handle intensive computational tasks, including image processing and machine learning model inference. The library distinguishes itself through a data-oriented matrix framework that utilizes proxy-based array abstractions to provide a consistent interface for multidimensional data. By employing factory-pattern algorithm interfaces and runtime type dispatching, i
Decouples algorithm implementations from user code through factory patterns to ensure long-term API stability and cross-platform compatibility.
Gin is a web framework designed for building high-performance web services and APIs. It functions as a middleware-oriented engine that processes incoming HTTP requests through a sequential chain of handlers, allowing for the modular management of cross-cutting concerns such as authentication and logging. The framework utilizes a radix tree data structure to perform request routing, ensuring high-speed path matching with minimal memory overhead. It distinguishes itself by employing a zero-reflection dispatch mechanism that invokes handler functions through static type assertions, avoiding the
Partitions API surfaces into logical segments that share common path prefixes and middleware execution contexts.
Nest is a server-side framework for building scalable and maintainable enterprise-grade applications using TypeScript. It provides a modular architecture that organizes code into encapsulated, reusable modules, utilizing a dependency injection container to manage object lifecycles and resolve component dependencies through declarative metadata. The framework distinguishes itself through a platform-agnostic abstraction layer that decouples core logic from underlying HTTP servers, allowing for flexible implementation choices. It employs a middleware-based request pipeline that processes traffic
Directs network traffic to specific operations using declarative routing and integrated input validation.
This project is a multi-provider AI gateway and proxy server that intercepts and routes requests between AI clients and various large language model providers. It functions as an API protocol translator and model router, mapping incoming requests to specific upstream providers or local runners to provide a unified interface for multiple models. The system distinguishes itself by bridging chat platforms and command line interfaces, converting messages from chat services into managed command line sessions. It further optimizes traffic by executing certain web search and fetch requests locally a
Maps incoming model requests to specific upstream backends using structured interface handlers.
Devise is a flexible authentication framework for Ruby on Rails applications. It serves as a user identity management system that handles registration, sign-in, password recovery, and account confirmation. The system integrates with the Warden middleware to manage user sessions and security across various request types. The framework functions as a multi-model authentication engine, allowing for the configuration of multiple distinct user models with independent routes and access controls. It also provides a standardized interface to connect with external identity providers and third-party lo
Maps specific authentication actions to dedicated controllers that handle the logic for sign-in, sign-up, and password recovery.
Devise is a comprehensive identity management system and authentication framework for Ruby on Rails applications. It provides a complete set of tools for managing user registration, secure sign-in, and session handling using a modular strategy pattern. The framework distinguishes itself by offering a suite of security hardening features, including brute force protection through account locking and secure password recovery workflows. It also functions as an integrator for external identity providers and third-party authentication via standardized protocols. Broad capabilities cover the full u
Automatically generates RESTful routes and controllers to handle authentication flows.
Recommenders is a recommendation system framework designed for building, benchmarking, and deploying collaborative and content-based filtering models. It provides a machine learning model pipeline that standardizes the process of moving recommendation data from raw ingestion through training and evaluation. The project functions as a model benchmarking toolkit, utilizing standardized ranking and error metrics to compare the accuracy of different algorithms. It also serves as a hyperparameter tuning tool, allowing for the optimization of model behavior and performance via external configuratio
Implements interface definitions that decouple recommendation algorithm implementation from usage.
This project is an educational framework designed to teach the fundamentals of building core distributed systems and web services from scratch in Go. It provides a collection of modular implementations that demonstrate how to construct essential infrastructure components, including web servers, remote procedure call systems, distributed caches, and database abstraction layers. The framework distinguishes itself by focusing on the internal mechanics of these systems rather than providing a high-level abstraction for production use. It covers the implementation of complex architectural patterns
Organizes related API endpoints under common URL prefixes and supports nested structures to apply shared configurations.
FreshRSS is an open-source, self-hosted web feed aggregator designed to collect, organize, and display content from multiple websites in a single, centralized interface. It functions as a comprehensive reader for standard syndication formats, allowing users to track updates from various sources while maintaining full control over their data and privacy. The platform supports multi-user environments, enabling individual account management and personalized reading experiences. The application distinguishes itself through its robust synchronization and extensibility capabilities. It provides a s
Maps incoming web requests to specific controller methods for request handling.
Drogon is a high-performance C++ HTTP web framework and asynchronous web server designed for building web applications and REST APIs. It utilizes an event-driven, non-blocking architecture to handle concurrent HTTP and WebSocket connections, and it implements a model-view-controller structure to separate business logic from presentation. The framework includes an integrated C++ object-relational mapping system and database client for performing asynchronous operations with relational databases and Redis key-value stores. It supports real-time, full-duplex communication via WebSockets and prov
Utilizes an architectural pattern that maps URL paths to specific class methods to decouple endpoints from business logic.
Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a model-view-controller architecture to separate business logic from user interface rendering, providing a comprehensive system for routing, parameter binding, and session management. The project distinguishes itself with a high-productivity development environment featuring automatic code compilation and hot-reloading, which refreshes the application state and templates upon file changes without requiring manual restarts. It also employs reflection-based parameter binding to automati
Implements an architectural pattern mapping incoming network requests to specific controller actions.
This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro
Maps incoming HTTP requests to specific handlers such as pages, controllers, or custom delegates.
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
Maps incoming URL paths to specific logic handlers and endpoints.
Apihub is a deployable REST API mock server and public sandbox that provides a collection of functional endpoints for testing HTTP requests and building frontend portfolios. It serves as a pre-built backend infrastructure for simulating diverse services without requiring a custom backend. The project provides dedicated mock endpoints for various business domains, including ecommerce workflows, social networking features, realtime chat, and task management. It also includes specialized endpoints for verifying HTTP method behavior and header handling. The system implements a RESTful architectu
Maps diverse functional paths to specific logic handlers to simulate multiple independent service categories.
Rails Admin is a web-based management dashboard and Active Record model manager for Ruby on Rails applications. It provides a graphical user interface for creating, reading, updating, and deleting database records, serving as a secure back office for database content management and administrative data auditing. The project distinguishes itself through a reflection-based schema mapping system that automatically generates CRUD interfaces from database metadata. It includes specialized tools for data versioning and change auditing to track administrative activity, as well as utilities for import
Implements architectural patterns that map administrative network requests to specific backend operations using structured handlers.
Higress is an AI API gateway and cloud-native traffic manager that functions as a Kubernetes ingress controller. It provides a centralized system for routing, securing, and optimizing traffic directed toward large language models, AI agents, and microservice architectures. The project distinguishes itself through deep AI orchestration, including the ability to host and manage Model Context Protocol servers that transform REST APIs into tools for AI agents. It features specialized AI infrastructure for model request proxying, protocol translation across multiple providers, and semantic-based c
Directs requests to backend services using fixed IP addresses or DNS domain names.
koa2-note 是一个专注于 Koa2 Web 服务器开发和 Node.js 异步编程的项目。它提供了一个使用异步中间件管道处理请求和响应周期的 Web 服务器和 API 构建框架。 该项目强调分层后端架构,将路由、业务服务和数据模型解耦。其特色在于集成了用于持久化用户会话和应用数据的关系型数据库,以及包含用于前端资源 JSX 转 JavaScript 编译的构建过程。 功能范围涵盖后端 API 设计(包括 RESTful 路由和请求数据解析)以及使用模板引擎的服务器端渲染。它还包括对使用多部分流解析的异步文件上传、基于 Cookie 的会话管理以及用于跨域请求的 JSONP 实现的支持。 该仓库作为一个教育资源,提供了学习 Koa 框架实现和服务器架构的结构化教程和示例。
Maps URL patterns to handler functions to organize API endpoints into logical groups and sub-routes.
Linfa 是一个用 Rust 实现的经典机器学习框架和统计学习套件。它提供了一系列用于监督和无监督学习的算法,专注于回归、聚类和决策树等传统统计方法。 该工具包以其能够编译为 WebAssembly 的能力而著称,使分析模型能够在浏览器环境中执行。它采用基于 trait 的算法接口,以标准化其各种模型的训练和预测过程。 该库涵盖了广泛的功能,包括监督分类和连续值回归。它提供无监督聚类、用于模型聚合的集成方法以及通过独立成分分析进行的信号处理。该套件还包括广泛的数据预处理工具,用于特征归一化、文本向量化以及使用 PCA 和 t-SNE 进行降维。 还提供了用于数据管理的实用程序,包括 CSV 导入和合成数据集生成,以及模型评估工具,如混淆矩阵和交叉验证指标。
Standardizes model training and prediction through a common trait-based interface for diverse learning algorithms.