IMPORTANT
Before installing this you need to purchase this theme http://demo.interface.club/?theme=brain
I have built the admin interface based on this. The theme is not open source so I cannot make it public.
I am trying to rebuild it on a free theme that everybody can use but for now you need to purchase that theme. Sorry :(, (*1)
Yii 2 Advanced Application Template
Yii 2 Advanced Application Template is a skeleton Yii 2 application best for
developing complex Web applications with multiple tiers., (*2)
The template includes three tiers: front end, back end, and console, each of which
is a separate Yii application., (*3)
The template is designed to work in a team development environment. It supports
deploying the application in different environments., (*4)
DIRECTORY STRUCTURE
common
config/ contains shared configurations
mail/ contains view files for e-mails
models/ contains model classes used in both backend and frontend
console
config/ contains console configurations
controllers/ contains console controllers (commands)
migrations/ contains database migrations
models/ contains console-specific model classes
runtime/ contains files generated during runtime
backend
assets/ contains application assets such as JavaScript and CSS
config/ contains backend configurations
controllers/ contains Web controller classes
models/ contains backend-specific model classes
runtime/ contains files generated during runtime
views/ contains view files for the Web application
web/ contains the entry script and Web resources
frontend
assets/ contains application assets such as JavaScript and CSS
config/ contains frontend configurations
controllers/ contains Web controller classes
models/ contains frontend-specific model classes
runtime/ contains files generated during runtime
views/ contains view files for the Web application
web/ contains the entry script and Web resources
widgets/ contains frontend widgets
vendor/ contains dependent 3rd-party packages
environments/ contains environment-based overrides
tests contains various tests for the advanced application
codeception/ contains tests developed with Codeception PHP Testing Framework
REQUIREMENTS
The minimum requirement by this application template that your Web server supports PHP 5.4.0., (*5)
INSTALLATION
Install via Composer
If you do not have Composer, you may install it by following the instructions
at getcomposer.org., (*6)
You can then install the application using the following command:, (*7)
php composer.phar global require "fxp/composer-asset-plugin:1.0.0-beta4"
php composer.phar create-project --prefer-dist --stability=dev tez/yii2-app-advanced advanced
GETTING STARTED
After you install the application, you have to conduct the following steps to initialize
the installed application. You only need to do these once for all., (*8)
- Run command
init
to initialize the application with a specific environment.
- Create a new database and adjust the
components['db']
configuration in common/config/main-local.php
accordingly.
- Apply migrations with console command
sh migrate.sh
. This will create tables needed for the application to work.
- Set document roots of your Web server:
- for frontend
/path/to/yii-application/frontend/web/
and using the URL http://frontend/
- for backend
/path/to/yii-application/backend/web/
and using the URL http://backend/
- Open common/config/params.php and add your mandrill details in the
mandrill
section.
- After purchasing the Brain theme, unpack it and copy the folder HTML/Bootstrap/Liquid into the vendor/tez/yii2-brain-theme/assets/Brain/Liquid
- TO DO - Create a cronjob to send email notifications out
- TO DO - Create info for the alias that needs to be put into the apache config file to have the storage folder to work
TO DO
- Find a way so you do not have to hardcode URLs
- Make the migrations work on windows too, right now sh migrate.sh is too specific
URLs
- Login:
yourhost/core/default/login
Username: webmaster@2ezweb.com.au
Password: admin
- Logout:
yourhost/core/default/logout
- Reset Password:
yourhost/core/default/request-password-reset
- User management:
yourhost/core/administrator/
Tests
Go to vendor/tez/yii2-cms-module/tests/codeception/backend/
run, (*9)
codecept build
, (*10)
to initialize the tests. Then run, (*11)
codecept run
, (*12)
to run the actual tests., (*13)
You can run, (*14)
codecept run --coverage-html
, (*15)
to get the code coverage. You can find the coverage in vendor/tez/yii2-cms-module/tests/codeception/backend/_output/coverage/, (*16)
TO DO
- Make the tests all run from inside the application/test folder, not from inside the vendor folder
- Make acceptance testing also work
- Put instructions on how to install codeception