Skip to content

nawinds/m3204-links

Repository files navigation

Сайт полезных ссылок группы M3204 Университета ИТМО — M3204.nawinds.dev

Useful links website for M3204 group @ ITMO University — M3204.nawinds.dev


Этот сайт работает на базе проекта Docusaurus, что позволяет легко редактировать его содержимое прямо на GitHub в Markdown и хостить его с помощью GitHub Actions.

  1. Хотите своей группе такой же сайт?
  2. Установка / Installation
  3. Локальная разработка / Local Development
  4. Сборка / Build
  5. Развертывание / Deployment
  6. Редактирование сайта
  7. Фичи / Features:
  8. Новости / News
  9. Поддержать проект

Хотите своей группе такой же сайт?

Пишите мне! Я сделаю такой же сайт специально для Вашей группы. Вы получите возможность быстро и легко вставлять на сайт ссылки для своей группы и актуальные дедлайны. Если возникнут вопросы о том, как и где это делать, с удовольствием отвечу!

Установка / Installation

$ yarn

Локальная разработка / Local Development

$ yarn start

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

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

Сборка / Build

$ yarn build

Эта команда генерирует статический контент в папке build, который может быть размещен с помощью любого сервера статического контента.

This command generates static content into the build directory and can be served using any static contents hosting service.

Развертывание / Deployment

Используя SSH:

Using SSH:

$ USE_SSH=true yarn deploy

Не используя SSH:

Not using SSH:

$ GIT_USER=<Your GitHub username> yarn deploy

Если Вы используете GitHub Pages для хостинга, эта команда является удобным способом собрать сайт и запушить его в ветку gh-pages.

If you are using GitHub Pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.

Редактирование сайта

Редактирование главной страницы

Основное содержимое страниц сайта хранится в виде Markdown файлов в директории /src/pages. Для редактирования главной страницы, отредактируйте файл /src/pages/index.md. Остальные файлы называются в соответствии с их путями на сайте.

Редактирование дедлайнов

Дедлайны хранятся в формате JSON в файле /static/DEADLINES.json. Поля name и time являются обязательными для заполнения у каждого дедлайна, url не обязательно, но в него удобно записывать ссылки на дедлайны (то есть на сами лабы, например). Если Вы не хотите указывать url, то нужно вообще убрать поле url из соответствующего дедлайна.

Чтобы добавить не обычный дедлайн, а тест (или, например, контрольную, теормин и т.д.), в поле name перед названием дедлайна напишите [Тест], например, [Тест] Матан: Контрольная работа по интегрированию.

Редактирование меню и подвала сайта

Содержимое меню и подвала сайта редактируется через файл docusaurus.config.js. Просто найдите в этом конфиге navbar и footer, чтобы добавить или удалить оттуда ссылки.

Редактирование номера группы и информации о сайте

  1. Измените title на номер Вашей группы, url на актуальный адрес сайта, organizationName и projectName на юзернейм владельца репозитория и название репозитория на GitHub в файле docusaurus.config.js.
  2. Измените номер группы в файле manifest.json.
  3. Измените иконки сайта на свои (favicon.ico, favicon-32x32.png, android-chrome-192x192.png, android-chrome-512x512.png)
  4. Откройте содержимое всех страниц в директории pages, измените номер группы и другую информацию на актуальную в title и description, измените ссылки на редактирование страницы внизу .mdx файлов.

Другие вопросы по настройке сайта

Чтобы настроить сайт под себя, вы можете обратиться к документации Docusaurus.

Фичи / Features

Блок дедлайнов / Deadlines block

deadlines.png

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

У каждого дедлайна есть ссылка на добавление в Google Календарь (при наведении на дату дедлайна). Кроме того, дедлайны, выделенные вертикальной полосой слева, имеют ссылки на сами лабы/дз/..., которые к ним относятся.

Дедлайны имеют разделение на обычные и на тесты (то есть тесты/контрольные/зачёты/... визуально выделяются значком 📚)

Ещё таймер у каждого дедлайна обновляется каждую минуту без обновления страницы :)

Под дедлайнами расположена ссылка на добавление дедлайна. Ссылка ведет сначала на подробную инструкцию по добавлению дедлайнов.

Дедлайны добавляются в формате JSON в специальный файл на GitHub. Как и при редактировании страниц сайта, достаточно сделать коммит, чтобы дедлайны появились на сайте.

В дополнение к дедлайнам на сайте, существует так же специальный бот-дедлайнер, который каждый вечер в 17 часов отправляет в группу актуальные дедлайны. Бот берет дедлайны с этого же сайта, что избавляет от необходимости добавлять дедлайны в разные места. Функционал бота почти идентичный блоку дедлайнов на сайте.

Разделение на предметы / Division into subjects

subjects.png

Ссылки на сайте разделены на разные предметы для упрощения навигации. В десктопной версии сайта есть быстрая навигация по предметам в правой части сайта, а также поддерживаются горячие клавиши.

Удобное редактирование контента в Markdown / Easy editing in Markdown

markdown.png

Контент страниц можно быстро изменять в Markdown, делая коммиты на GitHub, после чего изменения отображаются на сайте в течение нескольких минут, что позволяет добавлять нужные ссылки с любого устройства прямо на ходу.

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

Страница ведомостей / Grades table page

grades-table-page.png.png

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

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

Архив ссылок по семестрам / Links archive by semester

archive1.png archive2.png

Из меню сайта нетрудно найти архив со ссылками за прошлые семестры, что позволяет быстро находить свои старые оценки, работы и лекции.

Горячие клавиши / Shortcuts

shortcuts.png

На всём сайте работают горячие клавиши для быстрой навигации по сайту в десктопной версии. Среди них есть клавиши для перехода на другие страницы сайта и для пролистывания страницы к нужному предмету.

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

Веб-приложение / PWA (Web app)

Иконка приложения Скриншот 1 Скриншот 2
app-icon.jpg app-screenshot1.jpg app-screenshot1.jpg

Сайт настроен под использование в качестве веб-приложения (PWA), что позволяет устанавливать его как приложение на мобильных телефонах. Это позволяет получить быстрый доступ к сайту с мобильных устройств.

Для установки веб-приложения, рекомендуется воспользоваться браузером Chrome.

Светлая и темная тема / Light & dark color theme

light-theme.png dark-theme.png.png

В ИТМО учится много любителей тёмной темы, а поэтому немаловажной особенностью всего, что разрабатывается для студентов, является наличие тёмной темы, кроме стандартной светлой.

Переключение темы поддерживается на всех версиях сайта.

Генерация лицензионного ключа

Чтобы активировать сайт, размещенный на GitHub Pages, необходимо использовать актуальный лицензионный ключ. О том, как его сгенерировать, можно прочитать в этом приватном репозитории. Всем, у кого нет к нему доступа, нужно обратиться ко мне для активации сайта.

Новости / News

A/B-тестирование / A/B-test

5 апреля на сайте был запущен первый A/B-тест с целью выбрать лучший дизайн ссылок на дедлайны:

Старый дизайн Новый дизайн
ab_test_old_deadline_design.png.png ab_test_new_deadline_design.png

11 апреля эксперимент был завершен, однако в связи с неоднозначными результатами повторный тест был запущен 16 апреля на двухнедельный срок (до 30 апреля).

Поддержать проект

Поддержите проект, сделав перевод на Т-Банк или став моим спонсором на GitHub Sponsors!

Собранные средства мотивируют развивать сайт, добавлять новые фичи, а также подумать над созданием других полезных сервисов в рамках ИТМО.

About

Website with useful links for the M3204 group at ITMO University

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors 5