Yeoman Express Stack

Автор оригинала: Addy Osmani et al
  • Перевод
image
Прим. перев.: вместо короткой новости https://plus.google.com/115133653231679625609/posts/YDNbxVxi4er решил перевести доку по этому форку.

Yeoman Express Stack — это форк Yeoman (прим. перев.: статья на хабре).
Форк создан в доказательство возможности вести разработку полного стека (клиент-сервер) при помощи Yeoman 0.9.6, Express и AngularJS. Примечание: это экспериментальная ветка и (пока) пригодна только для тестирования и обкатки концепции.
Включает:
  • Специализированную версию Yeoman server.js с поддержкой Express-миддлваре
  • Из коробки поддерживается LiveReload
  • Генератор для Express и CRUD—генератор для AngularJS


Предполагается, что вы будете распологать код и клиентской, и серверной частей приложения в одной директории. После установки можно посмотреть структуру встроенного тестового приложения: директория server для серверной части приложения и директория app для клиентской части.

Компоненты

  • yeoman-custom — Спецсборка Yeoman 0.9.6 с поддержкой Express-миддлваре
  • generators — генераторы для Express и AngularJS (CRUD)
  • demo — приложение-пример


Установка (предполагается, что Yeoman@0.9.6 уже установлен)

Склонировать репозиторий

git clone git://github.com/yeoman/yeoman.git
cd yeoman
git checkout express-stack


Установить Yeoman@0.9.6 и Grunt
npm install -g yeoman
npm install -g grunt


Затем из директории express-stack выполнить:
  1. npm install
  2. grunt install
  3. следуйте подсказкам из п.2 и обновите системные пути
  4. теперь вам доступна новая команда yeomen (заметили e вместо a в слове yeoman? — e значит express); эта команда может запускать отдельную копию yeoman для использования новых генераторов, перечисленных ниже


Начнём

После завершения процесса установки у вас есть два варианта — можно начать новое приложение, используя перечисленные ниже команды, или перейти к демо, в котором уже есть небольшой пример кода, чтобы можно было попробовать готовый проект.
yeomen init angularcrud            # Обычное приложение Angular
yeomen init angularcrud:crud post  # Angular CRUD routes/views
yeomen init express post           # Express CRUD
yeomen server

# теперь можно перейти по ссылке #/api/post/index чтобы проверить
# что маршрутизация корректно работает с Express

Примечание: если будут сыпаться ошибки о том, что Express не установлен, выполните npm install express.

Демо

Теперь можно перейти в директорию demo и выполнить команду yeomen server, чтобы запустить это приложение. Если у вас локально установлено несколько версий yeoman, то можно использовать yeoman-custom напрямую, но в целом должно работать и так.

И наконец генераторы. Поддерживаются следующие:
Angularcrud:
  angularcrud:all
  angularcrud:app
  angularcrud:common
  angularcrud:controller
  angularcrud:crud
  angularcrud:crud-controller
  angularcrud:crud-route
  angularcrud:crud-view
  angularcrud:directive
  angularcrud:filter
  angularcrud:route
  angularcrud:service
  angularcrud:view

Express:
  express:all
  express:crud

Подробнее о каждом можно прочитать в USAGE.

Авторы

@addyosmani, @blai, @jacobmumm, @mklabs

Прим. перев.
Мнение о том, насколько удобно использовать Yeoman для разработки приложений на AngularJS, можно составить по видео (видео длинное, но интересное; показан процесс создания простенького магазина):

(смотреть с 13:40)
http://youtu.be/XOmwZopzcTA?t=13m40s.
На всякий случай подчеркну, что в видео используется обычная сборка Yeoman, и разрабатывается только клиентская часть.
  • +12
  • 6,8k
  • 4
Поделиться публикацией

Комментарии 4

    0
    Вау!
    А express:crud привязан к какой либо БД или тоже модульный?
      0
      Сам не пробовал, но есть сильное подозрение, что это генератор только для контроллеров
        0
        И что же он тогда генерирует? Затычки для запросов?
      +1
      Немного офтопик, но если вдруг кому-то будет интересно поставить Yeoman под винду, то вот инструкция

      После установки запустите
      c:\Users\ВашПользователь\AppData\Roaming\npm\yeoman.cmd init

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

      Самое читаемое