27 repositorios
Architectural patterns for separating data, presentation, and control logic.
Distinguishing note: Standard architectural pattern implementation for application structure.
Explore 27 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 es un framework web PHP diseñado para el desarrollo rápido de aplicaciones web con todas las funciones. Utiliza una arquitectura modelo-vista-controlador (MVC) para separar la lógica de negocio, los modelos de datos y las interfaces de usuario. El framework incluye un mapeador objeto-relacional (ORM) incorporado que permite la recuperación y el almacenamiento de datos relacionales sin escribir consultas SQL sin procesar. Emplea un enfoque de convención sobre configuración para reducir el código repetitivo asumiendo esquemas de nombres estándar para archivos y tablas de bases de datos. El proyecto proporciona herramientas para implementar formularios web con validación integrada y lógica de procesamiento. Su arquitectura incorpora un contenedor de inyección de dependencias para gestionar los servicios de la aplicación y un pipeline de solicitudes basado en middleware para procesar las solicitudes HTTP entrantes.
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 es una biblioteca de Objective-C segura para hilos que sirve como wrapper para la observación de clave-valor (KVO) de Cocoa. Gestiona el monitoreo de cambios en las propiedades de los objetos y automatiza el registro y la eliminación de observadores. El proyecto se centra en la seguridad de memoria vinculando los ciclos de vida de los observadores al controlador, asegurando que los observadores se eliminen tras la desasignación para evitar fugas y bloqueos. Incluye un protector de observación seguro para hilos para evitar condiciones de carrera y la resurrección de observadores al monitorear propiedades a través de múltiples hilos. La biblioteca mapea las rutas de las propiedades de los objetos a métodos manejadores, activando notificaciones a través de bloques o acciones personalizadas. Esta coordinación permite la sincronización de modelos de datos con interfaces de usuario.
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 es un framework de modelo-vista-controlador utilizado para construir sitios web dinámicos y APIs web dentro del ecosistema .NET. Proporciona una arquitectura de lado del servidor que separa la lógica de datos, el renderizado de la interfaz de usuario y el manejo de solicitudes para mantener los límites entre las capas de la aplicación. El framework incluye un motor de plantillas Razor para incrustar código en páginas HTML para generar contenido web dinámico. También funciona como un framework de API web RESTful para crear servicios HTTP escalables que entregan datos estructurados a los clientes a través de una interfaz de red estandarizada. El sistema gestiona el procesamiento de solicitudes a través de una tubería de middleware y utiliza enrutamiento basado en acciones para mapear las solicitudes HTTP entrantes a métodos de controlador específicos. Además, admite el desarrollo de aplicaciones a través de enlace de modelos, un contenedor de inyección de dependencias y opciones de alojamiento web en el lado del servidor.
Uses a framework implementation of the MVC pattern to separate data, presentation, and control logic.
Este es un framework de Ruby on Rails optimizado diseñado para construir servicios backend ligeros y endpoints JSON. Utiliza una arquitectura modelo-vista-controlador para separar los modelos de datos y la lógica de negocio de las respuestas de la API, omitiendo específicamente las vistas centradas en el navegador para reducir la sobrecarga del sistema. El framework proporciona un sistema para generar rápidamente modelos, controladores y rutas mediante scaffolding de API JSON. Mapea verbos HTTP a controladores para asegurar un enrutamiento de recursos y modelado de datos consistentes para backends de API RESTful. El proyecto incluye capacidades para la gestión de solicitudes HTTP, como autenticación, prevención de suplantación de IP y configuración de pipeline de middleware. Además, soporta la observabilidad de la aplicación mediante el registro de actividad de solicitudes e instrumentación de eventos, junto con optimizaciones de rendimiento como caché de respuestas y manejo de solicitudes condicionales.
Utilizes a structural pattern that separates data models, business logic, and API responses for scalable development.
Este proyecto es una aplicación de ejemplo y una implementación de referencia para el framework Spring MVC. Sirve como demostración de cómo construir aplicaciones web separando la lógica de negocio de las interfaces de usuario utilizando un patrón arquitectónico modelo-vista-controlador. La aplicación proporciona ejemplos de manejo de solicitudes HTTP, incluyendo la captura de datos de solicitud, el procesamiento de subidas de archivos y la generación de respuestas HTTP formateadas. Implementa endpoints de API REST que mapean solicitudes a métodos manejadores y devuelven datos en formatos como JSON y XML. El proyecto cubre capacidades fundamentales de desarrollo web, incluyendo enrutamiento de solicitudes, validación de datos y mapeo de excepciones. Demuestra el uso de interceptores para lógica transversal y convertidores de mensajes para la serialización de datos.
Implements a Model-View-Controller architecture to decouple business logic from the user interface.