habraview/README.md
2024-11-03 14:32:04 +03:00

52 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# habraview
Спартанский микрофронтенд habr.com для возможности архивации страниц
инструментами вроде ArchiveBox и т.п.
Современные фронтенды к Хабру не позволяют сохранить содержимое страницы
без искажений и в полном объёме. Всё обмазано JavaScript с ленивой загрузкой
изображений, отчего картинки на сохранённой странице только заблюренные, а
возможность архивации комментариев полностью отсутствует. Страницы
альтернативного фронтенда geekr.vercel.app вовсе непригодны для архивации.
Поэтому появился этот костыль.
Фичи:
* Умеет отображать страницу в минимальном сносном CSS.
* Отображает все комментарии (отрисовка дерева не удалась, но и так сойдёт).
* Решает проблему с заблюренными изображениями.
Работает только с `article`, то есть новостные посты и статьи из `sandbox`.
# Как пользоваться
`habraview` это веб-приложение. Просто запускаем файл:
```
./habraview
```
Приложение будет по умолчанию будет слушать на 8888 порту. Чтобы получить
страницу, открываем в брайзере:
```
http://localhost:8888?url=https://habr.com/ru/articles/853062/
```
Адрес статьи на Хабре можно передать целиком как значение quey-параметра `url`
или как `id`:
```
http://localhost:8888?id=853062
```
Теперь на эту страницу можно натравить архиватор веб-страниц.
# Компиляция
Нужны компиляторы `gcc` и [v](https://vlang.io):
```
v -prod -cflags -static -cflags -s .
```