5 Commits

Author SHA1 Message Date
Dmitry Gusev
048cb673e0 feat(brand): актуальный фавикон по брендовому знаку
All checks were successful
deploy / deploy (push) Successful in 1m33s
security / security (push) Successful in 2m41s
Старый favicon.svg (стилизованная «A» от скаффолдинга) заменён на
оптимизированный для 16-32px вариант logo-mark: кривые-отражения +
точка на тёмном фоне, тот же градиент #b794ff→#6c4ed4.

- public/favicon.svg — новый 64×64 viewBox, утолщённые штрихи
- public/favicon.ico — 32×32 (sharp → PNG-in-ICO)
- public/apple-touch-icon.png — 180×180 для iOS
- scripts/build-favicon.mjs + npm run build:favicon
- BaseLayout: добавлены <link> на ico (fallback) и apple-touch-icon
2026-05-25 13:33:22 +03:00
bd6ab03b2e feat(seo): discoverability + Schema.org + IndexNow + Trivy (#1)
All checks were successful
deploy / deploy (push) Successful in 3m7s
2026-05-21 14:25:12 +03:00
4319759d88 feat: OG-image, логотип, компактный hero, кнопка отзыва consent
- public/logo-mark.svg (знак, 512×512) и public/logo.svg (знак+надпись,
  640×160). Копии для пользователя — E:/Projects/anotherreflections-logo*.{svg,png}
- public/og-image.png 1200×630 — тематический баннер с лого, заголовком
  градиентом и подписью. og:image + twitter:summary_large_image в meta,
  расшаривание в Telegram/VK/WhatsApp/Twitter получит превью
- scripts/build-og-image.mjs — пересоздание баннера через sharp (devdep)
- .hero.hero-compact — внутренние страницы /miry/, /kontakty/, /privacy/,
  /category/* перешли на компактный hero (меньше padding, без курсивного
  tagline). На главной hero остался прежний — entry point
- На /privacy/ кнопка «Отозвать согласие» — ставит ar-consent=deny
  одним кликом (152-ФЗ: отозвать должно быть так же просто, как дать)
- Описание Главного форума: «Архивный» → «Действующий форум проекта»
2026-05-21 02:14:49 +03:00
6f2cfdd63d feat: счётчики с consent, политика, фиксы дизайна
Дизайн-фиксы:
- Перенесены картинки из старого WP в public/wp-content/uploads/
  (header_bg.gif + 3 размера NY-baner.png 2014/12). migrate-wp.mjs
  обновлён: корректно обрабатывает <a><img></a>, переписывает абсолютные
  URL anotherreflections.ru/wp-content/... в относительные
- Description в frontmatter теперь чистый plain text — без markdown-разметки
- Слаги 11/95/152 → kto-my, s-23-fevralya-2011, s-nastupayushhim-novym-2012-godom
- Hero-метрика: «N лет онлайн» → «с 2006 года» (последний пост 2015,
  активной жизни «20 лет» нет)
- Drop cap (буквица) — только для постов длиннее 240 символов
  (короткие посты раньше выглядели обрезанными)

Аналитика и конфиденциальность:
- Яндекс.Метрика (counter 13938862, webvisor) и Google gtag (GT-PH39R3X)
  перенесены со старого WP
- Cookie consent banner — самописный, без зависимостей: счётчики грузятся
  только после явного «Принять». Выбор хранится в localStorage + cookie
  ar-consent на 12 месяцев. Уведомление в духе 152-ФЗ
- /privacy/ — полная политика конфиденциальности: что собираем (через
  Метрику и GA), для чего, как cookies устроены, права пользователя,
  контакт для запросов на удаление
- В футере добавлены ссылки «Политика конфиденциальности» и «Контакты»
- sitemap.txt + llms.txt включают /privacy/
2026-05-21 02:07:08 +03:00
0c3e248ccc feat: каркас v2 — Astro 5 + миграция 50 постов из WP + RSS для IPB Importer
- Astro 5 (6.3.6) minimal scaffold с Content Collections для posts/pages
- Тёмная палитра в духе старой темы darkness-10 (тонкая типографика Inter+Lora)
- Layout с шапкой/футером, главной-лентой, страницами категорий и одиночными постами
- RSS (общий + per-category) под IPB RSS Importer: RFC-822 pubDate,
  <guid isPermaLink="true">, <content:encoded> с CDATA, <lastBuildDate>
- RSS_CUTOFF фильтр: архив 2009-2015 на сайте остаётся, в RSS — только новые
- 50 постов и 6 страниц мигрированы из WP (anotherreflctions_ru @ db.hhivp.com)
  через scripts/migrate-wp.mjs (HTML→md без внешних зависимостей)
- sitemap.xml автоматически через @astrojs/sitemap
2026-05-21 00:58:44 +03:00