Easy to setup, easy to use. Skeleton application
Bluz works with PHP 7.0 or later and MySQL 5.4 or later (please check requirements)
Download composer.phar, it's easy:
curl -s https://getcomposer.org/installer | phpRun create-project command (replace %path% ;):
php composer.phar create-project bluzphp/skeleton %path% --stability=devGet Bluz skeleton source files from GitHub repository:
git clone git://github.com/bluzphp/skeleton.git %path%Download composer.phar to the project folder:
cd %path%
curl -s https://getcomposer.org/installer | phpInstall composer dependencies with the following command:
php composer.phar installFor install you need any web-server (for Windows) and PhpStorm. dows) и PhpStorm.
Create project in PhpStorm:
- File -> New project;
- Set the project name and location;
- In a Project type field choose Composer project;
- Check that radiobutton is set opposite "Download composer.phar from getcomposer.org", type in a search field "bluzphp/skeleton", select this package in Available packages window and click OK.
- After that file composer.phar and all dependencies will be loaded.
Edit your configuration's files /path/to/application/configs/dev/*.php (configuration for development environment).
I think you need to change only
db.phpfor first run
To run the migrations, execute the command:
/path/to/vendor/bin/bluzman db:migrateTo fill database with data example, execute the command:
/path/to/vendor/bin/bluzman db:seed:runYou can run internal PHP web-server with simple console tool:
/path/to/vendor/bin/bluzman server:start --host[="..."] --port[="..."]Or create symlink to Apache document root (required FollowSymlinks option):
# for Linux
ln -s /path/to/public /path/to/web# for Windows
mklink /D /path/to/web path/to/publicYou can create models, controllers and views with Bluzman console tool, or following old school style:
Model consists from two classes Table and Row:
<?php
namespace Application\Users;
class Table extends \Bluz\Db\Table
{
protected $table = 'users';
protected $primary = ['id'];
}<?php
namespace Application\Users;
/**
* @property integer $id
* @property string $login
*/
class Row extends \Bluz\Db\Row {
}Controller is file with anonymous function:
<?php
namespace Application;
/**
* @privilege ViewProfile
* @cache 5 minutes
* @param integer $id
* @return array
*/
return function($id) {
return [
'user' => Users\Table::findRow($id)
];
};View is native:
<h2><?=$user->login?></h2>The project is developed by NIX PHP team and distributed under MIT LICENSE
NIX has OEM License of Redactor. Full text of Redactor License you can read at http://imperavi.com/redactor/license/