savant-cli

Savant Solutions API client

Интерфейс командной строки платформы Savant

Данная утилита предназначена для помощи в разработки порталов электронного обучения на платформе Savant.

Для начала работы Вам необходимо:

  • иметь рабочий портал в системе Savant
  • установить Node.js, Git
  • уметь пользоваться терминалом Unix (в Windows можно использовать Git Bash)

Установите следующие утилиты:

npm install -g savant-cli
npm install -g grunt-cli

Создайте директорию, в которой будут храниться файлы портала. Работа со всеми командами осуществляется из этой директории, ее мы будем называть корневой директорией проекта или просто проектом.

В корне проекта выполните:

savant init

Укажите значения следующих переменных (их можно найти на странице http://<адрес_портала>/mgmt/settings).

  • Realm ID
  • Realm Host
  • Realm Public Key
  • Realm Private Key

Для указания последних двух значений необходимо создать криптографическую пару ключей на странице настройки портала.

По окончании работы программы выполните:

npm install

В результате будут загружены и установлены программные модули, с помощью которых можно осуществлять сборку страниц, а также темы оформления портала (об этом позже).

Большинство проектов следует разрабатывать под управлением системы контроля версий.

Предлагаем следующую последовательность действий для использования Git:

  1. инициализируем репозиторий: git init

  2. добавляем файл .gitignore

    .idea/
    node_modules/
    *.iml
  3. добавляем все файлы под контроль версий git add -A

  4. коммитим git commit -a -m "Initial"

  5. размещаем на Bitbucket или GitHub

Сборка темы осуществляется локально с помощью Grunt и Stylus. Конфигурация сборки создается автоматически в процессе инициализации проекта.

Если, по какой-либо причине, у Вас нет файла конфигурации сборки Gruntfile.js, Вы можете взять шаблон templates/Gruntfile.js из данного репозитория и самостоятельно отредактировать его.

Процедура сборки темы такова.

  1. Запустите savant theme в корне проекта. При этом из Savant загружаются файлы Stylus, содержащие компоненты для сборки темы.

  2. В файле themes/variables.styl Вы можете переопределить различные переменные, которые влияют на отображение (например, типографику, цвета и прочие характеристики). Полный список переменных можно посмотреть в файле themes/lib/variables.styl.

  3. Необходимые стили можно добавить в файл themes.styl. При этом рекомендуется писать правила в отдельных модулях (как для организации, так и для предотвращения проблем с обновлениями), а затем включать их в themes.styl с помощью @include.

  4. В случае необходимости (например, после выхода новой версии Savant) можно загрузить обновления с Savant с помощью savant theme [file], где file -- путь к файлу, который необходимо обновить. Можно также запустить savant theme --force, в этом случае все файлы будут перезаписаны (прежде чем так делать, необходимо скоммитить текущую работу).

Этот раздел появится немного позднее. Спасибо за терпение!