Silicone Skeleton — настроенный Silex

от автора


Если вы не один раз начинали новые проекты с использованием Silex, то вы знаете что каждый раз в начале нужно настроить его под себя: добавить провайдеры, переопределить некоторые сервисы, определить структуру каталогов, и т.д. Со временем у вас появляется базовый набор для Silex которые вы используете для создания нового проекта.
Но если у вас его нету, предлагаю ознакомиться вам с моим: Silicone Skeleton.

В Silicone Skeleton включены следующие компоненты:

  • HttpCache — работает только в prod окружении.
  • Class Controllers — вы можете размещать код контроллеров не только в функциях, но и в методах классов.
  • Doctrine Common — вынесен отдельно т.к. используется в нескольких не зависимых провайдерах.
  • Doctrine ORM — вы можете пользоваться полноценной ORM (а не только DBAL). Для работы были добавлены следующие команды:
    1. database:create
    2. database:drop
    3. schema:create
    4. schema:update
    5. schema:drop

  • Monolog — логи пишутся в app/open/log/log.txt
  • Session
  • Twig — шаблоны лежат в app/view/
  • Translation — языковые файлы(yml, xliff) лежат в app/lang/[domain].[locale].yml
  • Validators — добавлен недостающий валидатор UniqueEntityValidator для Doctrine Orm
  • Forms
  • Security — с регистрация и авторизацией пользователей
  • Annotation Routes — можно использовать аннотации для роутов и ORM.
  • Console — необходимые команды для ORM и очистки кэша.

Структура каталогов очень близка с Symfony

app/     config/  -- Настройки     lang/    -- Языковые файлы     open/    -- Кэш, логи     src/     -- Исходники     vendor/  -- Вендоры     view/    -- Шаблоны     console  -- Консоль web/     index.php 

Вы можете использовать обычные Silex контроллеры: $app->get(…) вместе с такими контроллерами:

class Blog extends Controller {     /**      * @Route("/blog/{post}")      */     public function post($post)     {         return $this->render('post.twig');     } } 

Так же в Silicone Skeleton полностью настроек Security Provider. И контроллер входа и регистрации.

Для установки используйте Composer:

composer create-project elfet/silicone-skeleton your/app/path 

Все желающие помочь с развитием приветствуются!

ссылка на оригинал статьи http://habrahabr.ru/post/182612/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *