yii2-app

All you need for Rapid Development is My Advanced Template (Docker, DB||Redis Cache, Gentelella Admin, Dektrium-User, log-db, queue-db, i18n, EmailForm, postcss, Gii Ant) ~~~FREE WITH GREAT SUPPORT!~~~

Github stars Tracking Chart

Yii2 Fast Simple Advanced App Packagist Version Total Downloads

Yii2-app is Fast and Ready-to-production advanced project template.

Dockerized, for development- mysql, nginx, php-fpm containers

For you, I downgrade requirement to PHP v5.6. But PHP 7.1 is better! because it is really fast.

Please, enable php intl extension for better work.

Default, the template includes three tiers: frontend, backend, and console, each of which is a separate Yii application.

NOTE: Template is in initial development. Anything may change at any time.

Features

  • Gentelella Admin template is beautiful and simple bootstrap, compatible with yii2 assets: yiister/yii2-gentelella, Demo
  • Yii2 User is strong and proved user-module with many features: dektrium/yii2-user (login adminus, password adminus)
  • Frontend and Backend User Controllers are filtered (by dektrium/yii2-user)
  • DB cache, but I recommend Redis Cache - it is really fast
  • Yii2 queue (DB table queue), but you can use Redis-queue or other yii2-queue docs
  • Queue Manager with backend (/queuemanager/default/index) using ignatenkovnikita/yii2-queuemanager
  • Log DB Target with backend (/log/index) - simply view log messages
  • .htaccess - config for pretty urls (rewrite index.php), may be later add nginx config
  • UrlManagerFrontend for backend app (all url rules in file frontend/config/urls.php, hostInfo in common/config/params.php)
  • i18n translations in common/messages with config (current only English and Russian, language translation are welcome!)
  • ContactForm in frontend app is improved: himiklab/yii2-recaptcha-widget,
    all email are saved to DB (common/models/EmailForm Model), optionally send message to Viber messenger via bot
    (install requirements Bogdaan/viber-bot-php and config, uncomment code in Model)
  • postcss config (frontend/web/src/pcss//*.css)
  • Gii generator:
  1. added yii2-queue Jobs generator
  2. yii2 migration generator (from existing table) Insolita/yii2-migrik
  3. schmunk42/yii2-giiant - really steroid, but in development with bugs

Available modules

These modules can be easy installed to Yii2-App using Composer:

Installation

Yii2-app template can be installed using composer. Run following command to download and install Yii2-app:

composer create-project --prefer-dist akiraz2/yii2-app my-site

After installation run init

Docker

Install yii2-app using Docker:

  1. copy .env-dist to .env, configure if needed
  2. run command to create project
docker run --rm --interactive --tty \
  --volume $PWD:/app \
  --volume ${COMPOSER_HOME:-$HOME/.composer}:/tmp \
  composer create-project --prefer-dist akiraz2/yii2-app my-site
  1. copy /mysql/docker-entrypoint-initdb.d/createdb.sql.example to createdb.sql, then edit this file (database, user) from docker-compose.yml section db (MYSQL_USER: username, MYSQL_PASSWORD: password, MYSQL_DATABASE: dbname)
  2. docker-compose build
  3. docker-compose up -d
  4. docker-compose exec php bash, in terminal run php init, then run other migrations (see next)
  5. open localhost:8100 to test

Migrations

NOTE: Make sure that you have properly configured db application component and run the following command

php yii migrate/up --migrationPath=@vendor/dektrium/yii2-user/migrations
php yii migrate --migrationPath=@yii/log/migrations/
php yii migrate --migrationPath=vendor/ignatenkovnikita/yii2-queuemanager/migrations/
php yii migrate/up

Web server config

For newbies, I will recommend to read these instructions yiisoft/yii2-app-advanced/start-installation.md (apache, nginx, etc\hosts

Development

Messages

Change in common/config/main.php

'language' => 'ru-RU',
'sourceLanguage' => 'en-US',

Add your language in common/messages/config.php

    'languages' => [
        'ru-RU',
    ],

In shell

php yii message/extract common/messages/config.php

POSTCSS

NOTE: Dont forget install nodejs :) and run command npm install if you want use post locally

Add WebStorm file-watcher, postcss.config.js is ready for use

  1. scope file[my-site]:frontend/web/src/pcss//*.css
  2. program C:\Users\user4957\AppData\Roaming\npm\postcss.cmd
  3. arguments $ContentRoot$\frontend\web\css\style.css --config $ContentRoot$\post.config.js

Support

If you have any questions or problems with Yii2-App you can ask them directly
by using following email address: akiraz@bk.ru.

Contributing

If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.
+PSR-2 style coding.

I can apply patch, PR in 2-3 days! If not, please write me akiraz@bk.ru

Licensing

Yii2-App is released under the BSD License. See the bundled LICENSE.md
for details.

Main metrics

Overview
Name With Ownerakiraz2/yii2-app
Primary LanguagePHP
Program languagePHP (Language Count: 6)
Platform
License:Other
所有者活动
Created At2018-04-22 17:27:46
Pushed At2021-01-22 10:49:27
Last Commit At2021-01-22 13:49:20
Release Count17
Last Release Name1.4.3 (Posted on )
First Release Namev0.7 (Posted on )
用户参与
Stargazers Count49
Watchers Count11
Fork Count17
Commits Count26
Has Issues Enabled
Issues Count6
Issue Open Count1
Pull Requests Count0
Pull Requests Open Count0
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private