ВПС, ТГ, АПИ

Я получил выделенный сервер за 40 рублей в месяц. Одно ядро на 2 ГГц, 512 МБ оперативной памяти, ССД на 10 ГБ, безлимитный трафик, Линукс. Пока на нем расположен только телеграм‑бот. При настройке сервера я установил sudo (т. к. в Дебиане утилита отсутствует), создал нового пользователя с привелегиями, закрыл вход через рут, скачал pip и pyhton3, вставил в main.py код бота и добавил сервис weatherbot.service, чтобы программа работала в фоновом режиме и запускалась при перезагрузке сервера.

Динамический генератор музыки

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

Про страницу 404

Если страница не найдена, следует хоть что-нибудь показать пользователю.

Поддержка формул на сайте

За отображение формул отвечает отдельная библиотека — Катек (\(\KaTeX \)). Она основана на Теке (\(\TeX\)) Дональда Кнута. Катек рендерит быстрее аналогов и прост в использовании. Чтобы Катек отрендерил формулы, страница с формулами должна содержать ссылку на библиотеку в заголовке. Благодаря шаблонам Хьюго можно создать отдельный файл, содержащий эту ссылку, и указать файл в шаблоне страниц с формулами (формулы могут находится внутри поста или выводится на главную). Создадим файл math.html в папке /layouts/partials/ и вставим в него следующий код:

Хоп Путешествие

Вы знаете, что смешав манго с апельсиновым соком, можно изготовить “Апельсиновое манго”? Вы любите музыкальные дорожки ‘Бойцовского клуба’, написанные Пыльными Братьями? Я очень. Это хорошая музыка. А музыкальное сопровождение ‘Матрицы’? Тот самый ритм, который ‘Избитый До Смерти’, который играет во время сцены с блондинкой в красном платье. А вы знали то что его можно объяснить и перевести как ‘Заклубился До Смерти’? Мне кажется это интересным. Есть куча разных кинофильмов с хорошей музыкой.

Создание постов

Новый пост создается в директории сайта командой: hugo new posts/new-post.md Создается новый файл в папке /content/posts/. Это и есть пост, но если запустить сервер, новая запись не появится на главной. Потому что пост является черновиком. Это указано во фронт меттере, верхней части файла. --- title: "New Post" date: 2022-05-25T00:19:15+03:00 draft: true --- Нужно поменять draft: true на draft: false. Теперь пост готов. Можно добавить к посту автора. Во фронт меттере указывается поле author с подписью в кавычках:

Добавление темы на сайт

Хьюго строит сайт из шаблонов. Он применяет заготовленные пользователем правила для генерации сайта. Оформление поста описано одним файлом. В этом файле могут быть ссылки на другие шаблоны: общие для всех страниц подвал (футер), меню навигации, кнопки. Существуют сотни готовых тем оформления Хьюго. На данном сайте используется тема Тейл. Для ее установки нужно скачать тему с Гитхаба и распаковать в папке /themes/tale. Либо подключить тему в виде подмодуля: git submodule add https://github.

Установка Хьюго

Бинарники Хьюго доступны для всех платформ на Гитхабе. Достаточно скачать нужный архив, распаковать его и работать c программой через терминал. Винда Скачать и распаковать архив в C:\Hugo\bin. Запустить командную строку через поиск и выполнить команду: cd C:\Hugo\bin Теперь можно работать с Хьюго, но только в этой директории. Нужно добавить путь до Хьюго в переменные окружения. Открыть через поиск «Изменение системных переменных среды», открыть переменные среды, добавить переменную с путем до программы.

Telegram Bot

Бот испоьзует API Яндекса, чтобы получить информацию о геолокации. Из этой информации он берёт температуру и осадки. В API погоды указываются координаты места. Если использовать API Геокодера, можно получить координаты конкретного города, района или улицы.

Социальная cеть

Саундтрек к фильму на Яндекс.Музыке, Саундклауде и Ютубе.