Skip to content
Onsen UI 2.x + Vue.js 2.x + Yii 2.0 Application Template
Branch: master
Clone or download
Pull request Compare This branch is 35 commits ahead of developeruz:master.
Latest commit 4fca089 May 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Fixed links in Apr 14, 2016
assets added service worker for Prod May 17, 2019
commands Make vue.js template console command Jun 26, 2018
config re-created with Vuc-Cli 3 May 10, 2019
controllers added vuex May 12, 2019
mail/layouts typo Jul 2, 2014
models Minor Feb 18, 2018
modules Initial Commit Nov 30, 2018
tests Add fixtures in Yii2 module (yiisoft#182) May 23, 2018
vagrant Partially Fixes yiisoft#177 Nginx default config interferes with dev … Apr 1, 2018
views updated link tags May 17, 2019
vue-app updated state fields May 16, 2019
web updated assets May 17, 2019
widgets release version 2.0.13 Nov 2, 2017
.bowerrc re-created with Vuc-Cli 3 May 10, 2019
.gitattributes Added issue templates Mar 21, 2016
.gitignore added vuex May 12, 2019
.travis.yml Fixed travis tests on PHP 5.5 by installing imagick manually (yiisoft… Nov 2, 2017 Removed redundant line from license [skip ci] Apr 26, 2018 updated readme May 17, 2019
Vagrantfile Changes to run vagrant from project root dir (yiisoft#163) Feb 6, 2018
codeception.yml Remove setting cleanup false (yiisoft#183) Jun 13, 2018
composer.json updated composer May 12, 2019
composer.lock fix code Dec 10, 2018
requirements.php improved requirements checker error message about framework Oct 30, 2017
yii Call `require` as statment. Closes yiisoft#123 Aug 7, 2017
yii.bat Fixed copyright year in batch files Aug 17, 2014

This is a skeleton Onsen UI and Vue.js application integrated with Yii 2 as a backend.

The template was built using vue-cli 3, Vuex support and contains examples of using Onsen UI with Vue.js and Yii2, with the ability to rapidly develop a native looking ajax powered app with CSRF enabled.

Assets management is done via npm.


  assets/             contains assets definition
  commands/           contains console commands (controllers)
  config/             contains application configurations
  controllers/        contains Web controller classes
  mail/               contains view files for e-mails
  models/             contains model classes
  modules/            contains application modules
  node_modules        contains npm packages
  runtime/            contains files generated during runtime
  vue-app/                contains the onsen-ui and vue.js templates
  tests/              contains various tests for the basic application
  vendor/             contains dependent 3rd-party packages
  views/              contains view files for the Web application
  web/                contains the entry script and Web resources



The minimum requirement is that your Web server supports PHP 7.1.0. and you have node.js, yarn, vue-cli3 and composer installed

If you do not have Node.js installed you can install it by following the instructions

If you do not have Yarn installed you can install it by following the instructions

If you do not have vue-cli installed you may follow the instruction here

If you do not have Composer, you may install it by following the instructions at


The minimum requirement is that your Web server supports PHP 7.1.0.


Install via Composer

You can install this project template using the following command:

php composer create-project --prefer-dist --stability=dev onyijne/ovy ovy

Then cd ovy/vue-app and run yarn install

Now you should be able to access the application through the following URL, assuming ovy is the directory directly under the Web root. NEVER TRY THIS IN PRODUCTION

To populate assets use `yarn dev` during developement and `yarn build` for production


Please, check the Yii 2 Basic Project Template and Vue.js configuration sections.

You would also need to edit certain values in vue.config.js file like outputDir and and in store/state.js file like & USE IGNITO MODE DURING DEVELOPMENT TO AVOID CACHING ISSUE

You might want to adjust some values in the manifest.json file when in production


You can run console command to get a basic vue.js template for your components

php yii make/template --path=app/pages/TestComponent.vue

It will create a file TestComponent.vue with the following content

     export default {
         data() {
             return {
         mounted: function () {
         methods: {
         watch: {


Contributions are welcome and will be fully credited.

You can’t perform that action at this time.