28 个仓库
Architectural patterns for separating data, presentation, and control logic.
Distinguishing note: Standard architectural pattern implementation for application structure.
Explore 28 awesome GitHub repositories matching software engineering & architecture · Model-View-Controller Frameworks. Refine with filters or upvote what's useful.
This project is a full-stack web framework designed for building database-backed applications through a standardized architectural pattern. It provides a comprehensive suite of integrated libraries that manage the entire request-response lifecycle, from routing incoming web traffic to rendering dynamic server-side templates. By utilizing an object-relational mapping layer, the framework allows developers to define domain models that map database tables directly to application objects, simplifying data persistence, schema migrations, and complex relationship management. The framework is distin
Separates application logic into distinct layers for data management, user interface rendering, and control flow.
AngularJS is a structural framework for building dynamic web applications by extending standard HTML with custom tags and attributes. It operates as a client-side template engine that transforms declarative markup into interactive components, organizing application logic through a model-view-controller pattern. By utilizing a centralized dependency injection container, the framework manages the lifecycle of services and components to ensure modularity and maintainable architecture. The framework is defined by its two-way data binding mechanism, which automatically synchronizes data models wit
Organizes application logic by enforcing a clean separation between data models, user interface views, and controller layers.
Odoo is an integrated enterprise resource planning suite designed to manage core organizational processes, including accounting, inventory, manufacturing, and human resources, within a single platform. It functions as a modular business application framework that allows for the development and deployment of specialized modules, supported by a low-code environment that provides visual tools for creating custom workflows and data-driven interfaces. The platform distinguishes itself through a highly extensible architecture that enforces strict multi-tenant data isolation, ensuring that records r
Organizes application logic into distinct layers for data, interface, and request handling.
This project is a comprehensive server-side web framework designed for building scalable web applications and services. It provides a structured, component-based architecture that integrates a dependency injection container to manage service lifecycles and promote loose coupling across the software stack. The framework enables the creation of interactive client-side interfaces through a component-based model that synchronizes state directly with the browser. The platform distinguishes itself through a highly configurable middleware-based request pipeline and an attribute-based routing engine
Separate data, user interface, and business logic into distinct modules to maintain a clean and organized structure for complex software projects.
This project is a full-stack web framework that provides a comprehensive environment for building server-side applications. It utilizes a model-view-controller architecture to separate application logic into distinct layers for data management, user interface presentation, and request handling. The platform manages the entire request-response lifecycle, including security, session handling, and background task processing, while using an object-relational mapping layer to translate database records into programmable objects. The framework distinguishes itself through a central service containe
Separates application logic into distinct layers for data management, presentation, and request handling.
Backbone is a JavaScript MVC framework and client-side data orchestrator used to structure web applications. It functions as an event-driven UI library and RESTful state manager that synchronizes data models with remote JSON interfaces to maintain consistent application state. The framework coordinates communication between application components through a decoupled event system. It binds data updates directly to the document object model, ensuring that the user interface remains synchronized with the underlying state. It provides tools for frontend data organization, allowing developers to
Implements a framework for separating data, presentation, and control logic using the MVC pattern.
Phoenix is a server-side web framework built for the Elixir programming language and the Erlang virtual machine. It provides a structured environment for developing applications using the model-view-controller pattern, enabling developers to manage data, render user interfaces, and handle incoming requests within a scalable, process-based architecture. The framework distinguishes itself as a platform for real-time web communication, utilizing persistent bidirectional connections to broadcast live updates to clients. It incorporates a dedicated abstraction layer for relational database integra
Provides a structured environment for developing web applications that separates data management, user interface rendering, and request handling logic.
Ember.js is a structured JavaScript web framework designed for building scalable web applications. It utilizes a Model-View-Controller architectural pattern and incorporates a component-based UI library, a dependency injection framework, and a client-side routing engine. The framework distinguishes itself through a centralized registry for passing shared services across components and routes, alongside a routing system that maps URLs directly to templates and data models to manage navigation. Its broader capabilities include reactive state synchronization and computation memoization for UI p
Organizes web applications into distinct layers for data management, business logic, and templates.
Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program
Structures web applications by separating data logic, user interface templates, and request handling into distinct components.
Cachet is a self-hosted, open-source status page system designed to communicate service uptime, incident history, and infrastructure performance to end users. It provides a centralized dashboard for managing the operational lifecycle of system components, tracking service disruptions, and scheduling maintenance windows. The platform distinguishes itself through a comprehensive RESTful API that enables programmatic status page management and automated incident reporting. It supports deep integration with external monitoring tools, allowing for the synchronization of performance metrics and the
Organizes the codebase using the model-view-controller pattern to separate data, logic, and interface.
Dujiaoka is a self-hosted PHP web application designed for the automated sale and distribution of digital goods. It functions as a comprehensive e-commerce platform that manages the entire lifecycle of virtual products, from inventory listing to the instant delivery of activation keys upon successful payment. The system distinguishes itself through an integrated payment processing architecture that utilizes event-driven callbacks to verify transactions and trigger automated workflows. This ensures that digital assets are delivered to customers immediately after payment confirmation, while pro
Organizes application logic using the model-view-controller pattern for modularity.
CakePHP 是一个 PHP Web 框架,专为快速开发功能齐全的 Web 应用程序而设计。它利用模型-视图-控制器(MVC)架构来分离业务逻辑、数据模型和用户界面。 该框架包括一个内置的对象关系映射器(ORM),允许在不编写原始 SQL 查询的情况下检索和存储关系数据。它采用“约定优于配置”的方法,通过为文件和数据库表假设标准命名方案来减少样板代码。 该项目提供了用于实现具有集成验证和处理逻辑的 Web 表单的工具。其架构包含一个用于管理应用程序服务的依赖注入容器,以及一个用于处理传入 HTTP 请求的基于中间件的请求流水线。
Utilizes a model-view-controller architecture to separate business logic, data models, and user interfaces.
Loco is a full-stack web framework for Rust designed to accelerate application development using a convention-over-configuration approach. It functions as an MVC web framework that provides a structured environment for building web applications and REST APIs. The project distinguishes itself through an integrated API development toolkit and a command-line scaffolding engine. These tools automate the creation of controllers, models, and migrations, allowing for the rapid generation of functional CRUD resources and application boilerplate. The framework covers a broad range of backend capabili
Implements a Model-View-Controller architecture to separate data, presentation, and control logic.
KVOController 是一个线程安全的 Objective-C 库,作为 Cocoa 键值观察 (KVO) 的封装。它管理对象属性更改的监控,并自动注册和移除观察者。 该项目专注于内存安全,通过将观察者生命周期与控制器绑定,确保在释放时移除观察者,从而防止泄漏和崩溃。它包括一个线程安全的观察守卫,以防止在跨多个线程监控属性时出现竞态条件和观察者复活。 该库将对象属性路径映射到处理程序方法,通过 Block 或自定义操作触发通知。这种协调允许数据模型与用户界面的同步。
Synchronizes data models with user interfaces by triggering updates when specific object properties change.
Three20 is an Objective-C iOS UI framework that provides a collection of native user interface components and networking tools for building iPhone applications. It functions as both a mobile UI component library for creating application screens and an iOS networking library for handling HTTP requests and data synchronization between mobile devices and servers. The framework covers the end-to-end process of iOS application development, including native UI construction, mobile network request handling, and Objective-C mobile programming.
Uses the Model-View-Controller pattern to decouple data management and business logic from the UI layer.
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
Organizes application logic into models, views, and controllers for clean separation of concerns.
HexFiend is a native macOS hex editor designed for opening and editing binary files of any size without loading them entirely into memory. It uses a 64-bit addressable data model with memory-mapped file access, enabling navigation of multi-gigabyte files while maintaining byte-level undo for insert and delete operations. The editor distinguishes itself through a diff algorithm for binary file comparison that accounts for insertions and deletions, and a template-based structure parsing system that uses user-defined scripts to visualize binary file layouts. It also includes a typed data interpr
Maintains clean separation between binary data model, controller logic, and view rendering.
ASP.NET Core MVC 是一个用于在 .NET 生态系统中构建动态网站和 Web API 的模型-视图-控制器框架。它提供了一个服务端架构,将数据逻辑、用户界面渲染和请求处理分离开来,以保持应用层之间的边界。 该框架包括一个用于将代码嵌入 HTML 页面以生成动态 Web 内容的 Razor 模板引擎。它还作为一个 RESTful Web API 框架,用于创建通过标准化网络接口向客户端交付结构化数据的可扩展 HTTP 服务。 该系统通过中间件流水线管理请求处理,并使用基于操作的路由将传入的 HTTP 请求映射到特定的控制器方法。它还通过模型绑定、依赖注入容器和服务端 Web 托管选项支持应用开发。
Uses a framework implementation of the MVC pattern to separate data, presentation, and control logic.
这是一个精简的 Ruby on Rails 框架,专为构建轻量级后端服务和 JSON 端点而设计。它利用模型-视图-控制器(MVC)架构将数据模型和业务逻辑与 API 响应分离,特别省略了以浏览器为中心的视图以减少系统开销。 该框架提供了一个通过 JSON API 脚手架快速生成模型、控制器和路由的系统。它将 HTTP 动词映射到控制器,以确保 RESTful API 后端的一致资源路由和数据建模。 该项目包含 HTTP 请求管理功能,如身份验证、IP 欺骗防护和中间件流水线配置。它还通过请求活动日志记录和事件检测支持应用可观测性,并提供响应缓存和条件请求处理等性能优化功能。
Utilizes a structural pattern that separates data models, business logic, and API responses for scalable development.
该项目是 Spring MVC 框架的展示应用程序和参考实现。它演示了如何使用模型-视图-控制器(MVC)架构模式通过分离业务逻辑与用户界面来构建 Web 应用程序。 该应用程序提供了 HTTP 请求处理的示例,包括捕获请求数据、处理文件上传以及生成格式化的 HTTP 响应。它实现了将请求映射到处理程序方法并以 JSON 和 XML 等格式返回数据的 REST API 端点。 该项目涵盖了核心 Web 开发功能,包括请求路由、数据验证和异常映射。它演示了如何使用拦截器处理横切逻辑,以及使用消息转换器进行数据序列化。
Implements a Model-View-Controller architecture to decouple business logic from the user interface.