Skip to content

Latest commit

 

History

History
83 lines (54 loc) · 7.18 KB

CONTRIBUTING.md

File metadata and controls

83 lines (54 loc) · 7.18 KB

Добро пожаловать!

Жёстких правил тут нет, потому что нет особых ограничений у данного проекта - типа горящих сроков, маленьких бюджетов и неугомонных заказчиков.

Просто уважайте других и критикуйте информацию, а не людей.

Кодекс поведения доступен по ссылке.

Хочу исправить некорректную информацию

Лучше всего создать issue и описать там желаемый результат. После обсуждения с другими людьми может получиться текст ещё лучше и полезнее. К тому же, там иногда можно получить официальный ответ.

Хочу добавить что-то совсем новое

Опять же, лучше создать issue. Нужно обсудить, куда вставить этот кусок информации и как правильно его вставить.

Хочу написать пару абзацев вместо токена TODO

Супер! Пишите сразу!

Простой способ

Находите нужный файлик в репозитории, и прям там его редактируете по шагам, как описано. Результат реально можно сразу посмотреть, нажав на вкладочку "Preview changes". Синтаксис движка трансформации текста немного отличается от того, что показывает GitHub, но в большинстве простых случаев всё одинаково.

В конце процесса GitHub предложит закоммитить, выберите опцию "создать fork и pull request в master".

Посложнее, но можно хорошо протестировать

Можно создать fork, забрать всё локально, дописать текст, протестировать, а потом сделать PR в master основного репозитория.

Техническая проблема с сайтом

Есть несколько уже известных технических проблем с сайтом. Проверьте, нет ли среди них вашей. Если нет - создавайте новую, стирайте текст шаблона (так как он написан для проблем с контентом), пишите детали. Если есть - лайкайте, подписывайтесь на канал комментарии в проблеме (там внизу справа есть кнопочка ":loud_sound: Subscribe"), если считаете нужным - оставляйте комментарий.

Технические подробности

Сайт сделан с помощью генератора статики Jekyll с темой Minimal Mistakes и хостится на GitHub Pages.

Этот репозиторий содержит исходные файлы для сборки сайта. Файлы с контентом, который в конечном итоге увидят пользователи, лежат в каталоге _pages в формате markdown.

В файле navigation.yml содержится структура верхнего и бокового меню. Боковое меню может содержать только два уровня - это ограничение темы. Остальные уровни вложенности содержимого необходимо делать с помощью заголовков #, ##, ### внутри статей.

Чтобы добавить новую страницу с контентом, необходимо:

  • добавить новый файл UTF-8 (без BOM!) в формате markdown c заголовком:
    ---
    title: Заголовок страницы
    toc: true
    ---
    далее идёт содержимое файла в формате markdown
    
  • в файл navigation.yml добавить ссылку на эту страницу по примеру уже имеющихся.

Тестирование изменений

Disclaimer: работало в начале 2018 года, сейчас не работает в связи с какими-то изменениями в docker, надо разбираться

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

Проще всего - с помощью docker. Далее пример для Windows, в режиме "Linux containers".

Из корневого каталога репозитория в PowerShell (чтобы работал {$PWD}) запускаете:

docker run --name jekyll-xo -d -v "${PWD}:/srv/jekyll/" -p 4000:4000 jekyll/jekyll:stable /bin/bash -c "bundle update; jekyll serve --incremental --force_polling"

После старта контейнера он внутри сначала поставит все зависимости, потом сгенерирует статический контент для сайта из исходников и запустит web-сервер на порту 4000. Это займёт около 4 минут времени и 55Мб трафика.

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

docker logs --follow jekyll-xo