Here are the new packages introduced in Yii 3, from this official list.
The Framework
The new heart of Yii + 3 main extensions.
- yiisoft/yii-core : This is the new kernel of Yii. It defines the base framework and its core features like behaviors, i18n, mail, validation..
Then there's three important packages, considered as Extensions.
Each one is responsible for implementing the core functionalities of the channel they refer to:
-
yiisoft/yii-console: implements the
bases to build a console application (the base
Controller
for commands, theCommand
helper, ..) - yiisoft/yii-web: implements all that you need to build a web application (Assets management, Sessions, Request handling ..)
- yiisoft/yii-rest: implements all that you need to build a REST interface (ActiveController, ..)
Other Extensions
Depend (at least) on yii-core.
The conventional package naming is yiisoft/yii-something
.
Aside from the 3 extensions already encountered above (yii-console
, yii-web
, yii-api
), the following packages are available:
Development
- yiisoft/yii-debug The debug panel
- yiisoft/yii-gii The code generator extension
- yiisoft/yii-dev Tools for framework contributors
View rendering engines
- yiisoft/yii-twig Twig Extension
Data rendering
- yiisoft/yii-dataview : ListView, GridView, DetailView
JS & CSS Frameworks integration
- yiisoft/yii-bootstrap3 : Bootstrap 3 assets & widgets
- yiisoft/yii-bootstrap4 : Bootstrap 4 assets & widgets
- yiisoft/yii-jquery jQuery, ActiveForm
Widgets
- yiisoft/yii-captcha The CAPTCHA Extension
- yiisoft/yii-masked-input : The masked input widget (depends on jquery)
Misc
- yiisoft/yii-swiftmailer Swift Mailer Extension
- yiisoft/yii-http-client HTTP client extension
- yiisoft/yii-auth-client External authentication extension
Librairies
Do not depend on yii-core and meant to be usable outside the framework.
The conventional package naming is yiisoft/something
, without the "yii-" prefix.
- yiisoft/log : The logging library
- yiisoft/di : The dependency injection library
- yiisoft/cache : The caching library
- yiisoft/active-record : The Active Record library
- yiisoft/rbac : The role base access control library
- yiisoft/view : The view rendering library
- yiisoft/mutex : The mutex lock implementation
- yiisoft/db : The database library
Drivers for yiisoft/db
The various drivers for DB have also been separated into packages:
- yiisoft/db-mysql MySQL support for Yii
- yiisoft/db-mssql MSSQL support for Yii
- yiisoft/db-pgsql PostgreSQL support for Yii
- yiisoft/db-sqlite SQLite support for Yii
- yiisoft/db-oracle Oracle Database support for
- yiisoft/db-sphinx Sphinx support
- yiisoft/db-redis Redis support
- yiisoft/db-mongodb MongoDB support
- yiisoft/db-elasticsearch Elastic
Project template and application bases
To get you started with your next project.
This is a very basic Yii project template, that you can use to start your development.
You will probably want to pick one or more of these three bases to install in your project next:
The current on-going effort is to make the grid below all green:
Below is a dependency graph between Yii 3 packages generated by scanning the require
section
of each package composer.json file.