This Yii Framework package encapsulates Bulma components and plugins in terms of Yii widgets, and thus makes using Bulma components/plugins in Yii applications convenient.
composer require yiisoft/yii-bulma
Bulma is a CSS framework that provides all the CSS and SASS files to customize your application, the widgets by default do not register any Asset so you must register them in your application to be used, since you can simply use the Default CSS file layout, or build your own custom CCS.
Three Assets are provided:
- BulmaAsset: CSS, SASS file bulma css framework without JS code.
- BulmaHelperAsset: CSS, SASS, MIXINS it is an auxiliary library provide file helpers for Bulma CSS framework.
- BulmaJsAsset: Vizuaalog/BulmaJs it is an auxiliary library that has all the JS used by the Bulma CSS framework, you can decide to use this library, or alternatively write your own JS code.
To use widgets only, register BulmaAsset::class
, which we can do in several ways explained below.
By registering the Asset in the resources/layout/main.php
it will be available for all views. If you need it registered for individual view (such as resources/views/site/contact.php
) only, register it in that view.
use Yiisoft\Yii\Bulma\Asset\BulmaAsset;
/**
* @var Yiisoft\Assets\AssetManager $assetManager
* @var Yiisoft\View\WebView $this
*/
$assetManager->register([
BulmaAsset::class,
]);
$this->setCssFiles($assetManager->getCssFiles());
$this->setJsFiles($assetManager->getJsFiles());
You can register asset in the application parameters, config/params.php
. Asset will be available for all views of this application.
use Yiisoft\Yii\Bulma\Asset\BulmaAsset;
'yiisoft/asset' => [
'assetManager' => [
'register' => [
BulmaAsset::class
],
],
],
Then in main.php
:
/* @var Yiisoft\View\WebView $this */
$this->setCssFiles($assetManager->getCssFiles());
$this->setJsFiles($assetManager->getJsFiles());
We will quickly and easily describe how to use widgets, and be able to use all the power of the Bulma CSS framework with php.
The package is tested with PHPUnit. To run tests:
./vendor/bin/phpunit
The package tests are checked with Infection mutation framework. To run it:
./vendor/bin/infection
The code is statically analyzed with Phan. To run static analysis:
./vendor/bin/phan