savant-cli
Version:
Savant Solutions API client
98 lines (58 loc) • 5.29 kB
Markdown
# Интерфейс командной строки платформы Savant
Данная утилита предназначена для помощи в разработки порталов электронного обучения
на платформе [Savant](http://savant.solutions).
Для начала работы Вам необходимо:
* иметь рабочий портал в системе Savant
* установить [Node.js](http://nodejs.org), [Git](http://git-scm.com)
* уметь пользоваться терминалом 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](http://gruntjs.org) и [Stylus](http://learnboost.github.io/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`, в этом случае **все файлы будут перезаписаны** (прежде чем так делать, необходимо скоммитить текущую работу).
## Создание страниц
Этот раздел появится немного позднее. Спасибо за терпение!