/tech

Технологии, которые можно использовать для приложения на полном БЭМ-стеке

Технологии, которые можно использовать для приложения на полном БЭМ-стеке

Содержание

Клиент

  • БЭМ — главный ресурс с исчерпывающей информацией по БЭМ (рекомендую использовать кнопку "Быстрый старт"). А также прогулятся по всем разделам ресурса (начать лучше с методологии и FAQ).
    • БЭМ-компоненты — тут кратко собрано все из чего состоит БЭМ. Собрано большое количество ссылок на внешние ресурсы об инструментах, которые упоминиаются в лекциях (ссылка).
    • Мастер-класс по БЭМ — удобный способ выполнения заданий по БЭМ, необходимых для начального усвоения методологии. Стоит также посмотреть лекцию. Кроме того, есть инструкции для пользователей windows.
    • Список очень полезных лекций стоит посмотреть тут. Например, про полный стек БЭМ-технологий.
  • ENB-сборщик — писать можно на любых технологиях с любыми препроцессорами, а потом все собирать с ENB.

Сервер

  • Sails и EXPRESS — 2 основых nodejs-фреймворка, которые используются во всех примерах для full-stack БЭМ.
    • Sails базируется на Express и предлагает более удобную реализацию в рамках MVC подхода и организацию файлов внутри проекта (по личному опыту).
    • Sails предлагает удобное подключение всевозможных адаптеров для баз данных: описание модели в JSON (+ автоматические миграции) => подключение адаптера => использование любой БД => REST API из коробки без доп. настроек.
    • Генератор для связки БЭМ и Sails
    • Фреймворк для одностраничных приложений
  • Passport — для реализации авторизации на сайте.

Хостинг и облака

  • Node-hosting — сводная таблица с кратким описанием хостингов, поддерживающих nodejs и websockets из коробки. Из бесплатных стоит выделить:
    • Heroku
      • Плюсы: интеграция с GitHub, большое количество add-ons (базы данных, мониторинг, и тд.), удобный deploy и доступ к приложению из командной строки.
      • Минусы: если приложение не используется, то "засыпает" через 30 минут и достаточно долго просыпается потом. Можно обойти с помощью HostTracker, если настроить проверку приложения чаще чем в 30 минут. Кроме того, если выходить за рамки бесплатных услуг, то все стоит достаточно дорого.
    • Qt Cloud Services — есть интеграция с GitHub, приятный интерфейс. Приложение не засыпает, поддержка MongoDB.
    • OpenShift