dmstr/yii2-prototype-module

Backend UI for static files

Maintainers

👁 schmunk

Package info

github.com/dmstr/yii2-prototype-module

Type:yii2-extension

pkg:composer/dmstr/yii2-prototype-module

Statistics

Installs: 71 268

Dependents: 3

Suggesters: 1

Stars: 5

Open Issues: 0

2.3.1 2025-06-16 06:44 UTC

Requires (Dev)

None

Suggests

None

Provides

None

Conflicts

Replaces

None

BSD-3-Clause 5296fc01adc8b3de8cb3ef9811eddeff509017b1

  • Tobias Munk <tobias.woop@diemeisterei.de>

extensionyii2

This package is auto-updated.

Last update: 2026-06-20 19:05:46 UTC


README

👁 Latest Stable Version
👁 Total Downloads
👁 License

Twig, LESS and HTML Content prototyping module for Yii 2.0 Framework

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist dmstr/yii2-prototype-module "*"

or add

"dmstr/yii2-prototype-module": "*"

to the require section of your composer.json file.

Requirements

  • configured Twig view renderer in application (since 0.5.0-rc6)

Usage

####Prototype command:

#####Configuration

In your console config add:

'controllerMap' => [
 'prototype' => 'dmstr\modules\prototype\commands'
]
Commands:
  • prototype/export-html
  • prototype/export-less
  • prototype/export-twig

Each of these commands exports either html, less or twig as a file on a given file path (via --exportPath flag) default is @runtime/exports

Note: To escape file names you can use the --escapeFileNames flag

  • prototype/export-asset-bundle <mainLessFile (optional)>

Exports less files and an asset bunde to a given export path (via --exportPath flag) default is @runtime/exports

Note:

1.) You will be prompted to choose a namespace and to select less files which should be added to the asset bundle 2.) The defined main less file will be automatical have default yes in confirmation

--> if you run this command on non interactive mode (--interactive=0), main less file will be added to the asset bundle and the namespace will be set to app\assets

Twig example

{{ use ('hrzg/moxiecode/moxiemanager/widgets') }}

{{ browse_button_widget( {"tagName": "a"} ) }}

Cache trigger time

\Yii::$app->cache->get('prototype.less.changed_at');

Testing

docker-compose up -d

docker-compose run phpfpm codecept run

CRUDS

‼️ Do no regenerate CRUDs for html

$ yii batch \
 --tables=app_twig \
 --modelNamespace=dmstr\\modules\\prototype\\models \
 --modelQueryNamespace=dmstr\\modules\\prototype\\models\\query \
 --crudSearchModelNamespace=dmstr\\modules\\prototype\\models\\query \
 --crudControllerNamespace=dmstr\\modules\\prototype\\controllers \
 --crudViewPath=@dmstr/modules/prototype/views \