Микрофронтенд для habr.com https://hb.phreepunk.network
Go to file
2024-11-03 17:15:01 +03:00
assets upd 2024-11-03 16:55:43 +03:00
habr init 2024-11-03 14:32:04 +03:00
templates upd 2024-11-03 16:55:43 +03:00
.editorconfig init 2024-11-03 14:32:04 +03:00
.gitattributes init 2024-11-03 14:32:04 +03:00
.gitignore init 2024-11-03 14:32:04 +03:00
Dockerfile upd 2024-11-03 16:55:43 +03:00
habraview.v upd 2024-11-03 16:55:43 +03:00
Makefile upd 2024-11-03 16:55:43 +03:00
README.md Update README.md 2024-11-03 17:15:01 +03:00
v.mod init 2024-11-03 14:32:04 +03:00

habraview

Спартанский микрофронтенд habr.com для возможности архивации страниц инструментами вроде ArchiveBox и т.п.

Современные фронтенды к Хабру не позволяют сохранить содержимое страницы без искажений и в полном объёме. Всё обмазано JavaScript с ленивой загрузкой изображений, отчего картинки на сохранённой странице только заблюренные, а возможность архивации комментариев полностью отсутствует. Страницы альтернативного фронтенда geekr.vercel.app вовсе непригодны для архивации. Поэтому появился этот костыль.

Фичи:

  • Умеет отображать страницу в минимальном сносном CSS.
  • Отображает все комментарии (отрисовка дерева не удалась, но и так сойдёт).
  • Решает проблему с заблюренными изображениями.

Работает только с article, то есть новостные посты и статьи из sandbox работать не будут.

Как пользоваться

habraview это веб-приложение. Просто запускаем файл:

./habraview

Приложение будет по умолчанию будет слушать на 8888 порту. Чтобы получить страницу, открываем в браузере:

http://localhost:8888?url=https://habr.com/ru/articles/853062/

Адрес статьи на Хабре можно передать целиком как значение query-параметра url или как id:

http://localhost:8888?id=853062

Теперь на эту страницу можно натравить архиватор веб-страниц.

Компиляция

Нужны компиляторы gcc и v:

make

Docker

docker build -t habraview:latest .
docker run --rm -p 8888:8888 habraview:latest