30 open-source projects similar to yiisoft/yii2, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Yii2 alternative.
CodeIgniter is an open-source PHP web framework and application toolkit designed for server-side development. It implements a model-view-controller architecture to separate internal data representations from the user interface. The framework utilizes a front-controller architecture to direct all incoming web requests through a single entry point for URI parsing and request dispatching. It includes a dependency injection container to resolve class dependencies and manage the lifecycle of core system components. The toolkit provides capabilities for routing management, database interactions, a
Yii is a full-stack PHP web framework and component-based system designed for building dynamic websites and RESTful services. It operates as an MVC application framework that separates business logic from the user interface and includes a built-in object-relational mapper for interacting with databases. The project provides a comprehensive command line toolset for project bootstrapping, automated code generation, and the execution of background tasks. It utilizes a component-based architecture and a service locator to manage dependency injection and object lifecycles. The framework covers a
Beego is a high-performance toolkit for building web applications and RESTful APIs using the Go programming language. It is structured as an MVC web framework that separates data models, views, and controllers to organize application logic. The project provides a comprehensive suite of integrated tools, including an object-relational mapper for translating code objects into database tables and a session manager for maintaining user identity and state across server requests. It also includes an internationalization framework for managing multilingual content and translating text based on user
Think is a PHP web framework and object-relational mapper designed for building web applications. It functions as a structured foundation for application development, incorporating a dependency injection container to manage object lifecycles and reduce coupling between components. The project includes a remote application debugger that allows for the inspection of internal state and variables from an external environment. It implements a model-view-controller architecture to separate application logic and data from the user interface. This includes a request pipeline for routing and middlewa
Spine is a JavaScript MVC framework and client-side library designed to organize web applications into maintainable components and modules. It functions as a modular frontend architecture that separates data management from user interface logic using the model-view-controller pattern. The framework operates as an event-driven state manager, utilizing a publish-subscribe messaging pattern to synchronize application state and update views. It includes a template-based view engine that generates HTML by injecting dynamic data from a model into predefined markup. The system provides tools for fr
Sea-ORM is an asynchronous SQL object-relational mapper and database toolkit for mapping relational tables to strongly typed objects. It provides a relational database mapper for performing CRUD operations across MySQL, PostgreSQL, and SQLite, and includes a programmatic dynamic query builder for constructing complex SQL statements. The project distinguishes itself by providing a GraphQL schema generator that transforms database entities into typed schemas with built-in pagination and filters. It also features a dedicated database migration tool for defining and applying versioned schema chan
ABP is an opinionated architectural framework for building enterprise software solutions using .NET and ASP.NET Core. It serves as a structural toolkit for implementing domain-driven design and microservices patterns, providing a modular enterprise architecture where functionality is organized into independent, pluggable modules. The platform is specifically designed to support multi-tenant SaaS architectures, isolating data and configurations for multiple independent customers within a single application instance. It provides enterprise boilerplate infrastructure and pre-configured templates
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
Spring PetClinic is a reference application for the Spring Framework, serving as a complete implementation that demonstrates the architecture and best practices for building Java services. It functions as a veterinary practice management system designed to track pet owners, animal records, and clinical visit histories. The project provides a practical example of a containerized web application, illustrating how to integrate a Java application with relational databases like MySQL and PostgreSQL. It serves as a guide for learning how to develop an application using the model-view-controller pat
CakePHP is a PHP web framework designed for the rapid development of full-featured web applications. It utilizes a model-view-controller architecture to separate business logic, data models, and user interfaces. The framework includes a built-in object-relational mapper that allows for the retrieval and storage of relational data without writing raw SQL queries. It employs a convention-over-configuration approach to reduce boilerplate code by assuming standard naming schemes for files and database tables. The project provides tools for implementing web forms with integrated validation and pr
Yaf is an MVC web framework implemented as a compiled PHP extension in C. It functions as a performance extension designed to reduce overhead and increase request processing speeds compared to frameworks written in standard user-land PHP. The framework moves core logic, including request routing, into a compiled binary layer to accelerate the dispatch of incoming network requests to controllers. It provides a command-line utility to generate standardized project scaffolding and boilerplate directory structures. The system covers application bootstrapping to initialize environment state, conf
This project is an educational guide focused on building modular web applications using native PHP features. It demonstrates how to construct a functional application architecture from the ground up without relying on external third-party frameworks. The guide centers on implementing core architectural patterns, including a request router that maps incoming HTTP paths to specific controller logic and a dependency injection container that manages object lifecycles and class requirements. By decoupling components through automated dependency resolution, the project emphasizes maintainability an
This project is an enterprise application framework designed to accelerate the construction of complex business software. It functions as a full-stack code generator that automatically produces backend logic, database operations, and frontend interface components from defined data schemas. By providing a standardized foundation for security, authentication, and administrative management, it enables developers to rapidly deploy functional, production-ready software environments. The platform distinguishes itself through its native support for multi-tenant architectures, allowing for secure dat
Tornado is a Python web framework and asynchronous networking library used to build scalable web applications and high-performance servers. It provides a non-blocking HTTP server capable of handling thousands of simultaneous connections. The project functions as a WebSocket server framework, enabling real-time bidirectional communication and persistent connections between clients and servers. It supports the implementation of custom networking protocols and high-performance networking services beyond standard HTTP. Its capabilities cover asynchronous web application development, concurrent A
This project is a lightweight PHP framework designed for building web applications using the model-view-controller architectural pattern. It provides a structured environment that separates business logic, data management, and user interface presentation into distinct layers to improve code maintainability. The framework utilizes a front-controller to intercept all incoming web traffic, routing requests to specific controller actions based on defined URL patterns. It incorporates middleware-style request interception, allowing for the execution of custom logic such as authentication, security
This project is a structured architectural layer for Backbone.js that implements the model-view-controller pattern for building complex single-page applications. It serves as a view management library and application framework that organizes views and data into manageable components and regions. The framework provides a centralized event aggregator pattern to coordinate communication between decoupled application modules without direct dependencies. It also includes a configuration-based client-side routing engine that maps browser URLs to specific controller actions. The system covers front
This is a full-stack web development framework for Node.js based on the model-view-controller architecture. It provides a comprehensive platform for building applications with an integrated dynamic view engine for HTML markup, a WebSocket communication server for bidirectional real-time messaging, and an embedded NoSQL database for persisting flexible data structures without external dependencies. The framework includes a background task processor that offloads computationally intensive operations to separate worker threads to maintain application responsiveness. It also features an internati
This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency. The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability. The
Laravel is a comprehensive full-stack web framework designed for building scalable server-side applications. It provides an integrated development environment that centers on an object-relational mapper for database abstraction, a robust routing system, and a sophisticated service container for dependency injection. The framework is built to handle complex application requirements through a modular architecture that emphasizes convention over configuration. What distinguishes Laravel is its deep integration of background processing and event-driven communication. It features a task queue orch
Sails is an enterprise Node.js web framework designed for building scalable applications using a model-view-controller architecture. It functions as a realtime web application framework and a database agnostic object-relational mapper, providing a structured environment for developing server-side applications. The framework enables bi-directional data exchange between clients and servers via persistent connections to support real-time features. It utilizes a consistent interface to interact with various relational and non-relational data stores, allowing the application to remain independent
Iris is a high-performance web framework and API toolkit for the Go programming language. It provides the infrastructure necessary to build HTTP/2 web applications, REST APIs, and MVC-based websites. The project distinguishes itself through a flexible architectural model that supports multiple isolated application instances within a single process and allows for binary-embedded asset loading to eliminate external filesystem dependencies. It features dynamic router hot-reloading and a pluggable view engine for rendering dynamic HTML content. The framework covers a broad range of capabilities,
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
Buffalo is a comprehensive MVC web framework and full-stack toolchain for building web applications in Go. It provides a structured development environment that separates models, views, and controllers, integrating a web framework with a dedicated object-relational mapper wrapper for database schema and record management. The project distinguishes itself through a set of development utilities for bootstrapping project structures, managing assets, and building production-ready containers. It features a sophisticated routing system that supports convention-based RESTful resource generation, dom
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
This is a streamlined Ruby on Rails framework designed for building lightweight backend services and JSON endpoints. It utilizes a model-view-controller architecture to separate data models and business logic from API responses, specifically omitting browser-centric views to reduce system overhead. The framework provides a system for rapidly generating models, controllers, and routes through JSON API scaffolding. It maps HTTP verbs to controllers to ensure consistent resource routing and data modeling for RESTful API backends. The project includes capabilities for HTTP request management, su
i18next is a JavaScript localization library and internationalization framework used to translate application text into multiple languages. It functions as a dynamic translation manager that handles translation resources, language detection, and the mapping of unique keys to localized strings. The system features a pluralization and interpolation engine that applies language-specific grammatical rules for numeric counts and injects dynamic variables into strings. It utilizes a plugin-based backend architecture to load and cache translation namespaces from various sources, including remote ser
This project is a web-based point of sale and retail management system built with PHP and MySQL. It serves as a comprehensive tool for processing sales transactions, tracking inventory levels, and managing business expenses. The software integrates hardware for retail operations, including barcode scanner support and receipt printing. It features a dedicated inventory management system capable of generating EAN barcodes, organizing items into kits, and importing product data via CSV files. Beyond basic transactions, the platform covers customer loyalty tracking, the issuance of gift cards, a
Kratos is a toolkit for building cloud-native microservices in Go. It provides a comprehensive suite of framework primitives, including a dedicated toolset for API-first development using Protobuf to generate server and client code for gRPC and HTTP. The project is distinguished by its pluggable service infrastructure, which allows for the swapping of configuration stores, service registries, and data encoding formats. It utilizes a composable middleware pipeline to inject cross-cutting concerns such as authentication, request validation, and circuit breaking into the service flow. The frame
Flasky is a complete web application example and tutorial designed to demonstrate professional development patterns using the Flask framework. It serves as a practical implementation of a web service to teach server-side development, application structure, and the use of a Python object-relational mapper for database applications. The project provides a containerized environment that packages the web application and its database dependencies into isolated images. This ensures consistent behavior across different hosting platforms and includes configurations for production-grade server deploym
gqlgen is a schema-first Go library designed to build type-safe GraphQL servers. It functions as a code generation engine that transforms declarative GraphQL schema definitions into strongly-typed Go source code, ensuring strict alignment between the API contract and the underlying implementation. The framework distinguishes itself through its deep integration with the Go type system and its highly extensible build pipeline. By using schema-first development, it automates the creation of server boilerplate and resolver stubs, allowing developers to map schema fields directly to Go structs and