- Notifications
You must be signed in to change notification settings - Fork17
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!~~~
License
akiraz2/yii2-app
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Yii2-app is Fast and Ready-to-production advanced project template.
Dockerized, for development (mysql, nginx, php-fpm)
Please,enable php intl extension for better work.
Default, the template includes three tiers:frontend
,backend
, andconsole
, each of which is a separate Yii application.
NOTE: Template is in initial development. Anything may change at any time.
- 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
, passwordadminus
) - Frontend and Backend User Controllers are filtered (by
dektrium/yii2-user
) - File or DB cache, but I recommend Redis Cache - it is really fast
- Yii2 queue (DB table
queue
), but you can useRedis-queue or otheryii2-queue docs - Queue Manager with backend (
/queuemanager/default/index
) usingignatenkovnikita/yii2-queuemanager - Log DB Target with backend (
/log/index
) - simply view log messages - .htaccess - config forpretty urls (rewrite index.php),may be later add nginx config
- UrlManagerFrontend for backend app (all url rules in file
frontend/config/urls.php
, hostInfo incommon/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 requirementsBogdaan/viber-bot-php and config, uncomment code in Model) - Gii generator:
- addedyii2-queue Jobs generator
- yii2 migration generator (from existing table)Insolita/yii2-migrik
- schmunk42/yii2-giiant - really steroid, but in development with bugs
These modules can be easy installed to Yii2-App using Composer:
- Yii2 Super Blog Module (semantic, seo):akiraz2/yii2-blog
- Yii2 many web-statictic counters (all-in-one)(yandex, google, own db-counter):akiraz2/yii2-stat
- yii2 opengraph component:dragonjet/yii2-opengraph
- yii2 settings (db+cache):yii2mod/yii2-settings
- etc...
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 runinit
Install yii2-app usingDocker:
- 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
- copy
.env-dist
to.env
, configure if needed. You can change DB from mysql to postgresql - just change docker-compose.yml (and common/config/main-local.php after init) - copy
/mysql/docker-entrypoint-initdb.d/createdb.sql.example
tocreatedb.sql
if you have ready DB (so dont run migrations) docker-compose build
(you can configure Docker PHP in /php/Dockerfile-debian before building, for example, add mongodb)docker-compose up -d
docker-compose exec php bash
, in terminal runcomposer install
, thenphp init
, then run other migrations (see next)- openhttp://localhost:8100 to test frontend (backend is on http://localhost:8200)
Access to Console App:docker-compose exec php bash
andphp yii mycommand/action
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/migrationsphp yii migrate --migrationPath=@yii/log/migrations/php yii migrate --migrationPath=vendor/ignatenkovnikita/yii2-queuemanager/migrations/php yii migrate/up
login:adminus
password:adminus
For newbies, I will recommend reading these instructionsyiisoft/yii2-app-advanced/start-installation.md (apache, nginx, etc\hosts
Change incommon/config/main.php
'language' => 'ru-RU','sourceLanguage' => 'en-US',
Add your language incommon/messages/config.php
'languages' => [ 'ru-RU', ],
In shell
php yii message/extract common/messages/config.php
If you have any questions or problems with Yii2-App you can ask them directlyby using following email address:akiraz@bk.ru
.
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 meakiraz@bk.ru
Yii2-App is released under the BSD License. See the bundledLICENSE.mdfor details.
About
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!~~~