Реструктуризация: два глобальных раздела — Яша и Семен
Весь контент перенесён в content/yasha/ (7 подразделов). Создан content/semen/ с подразделами: changelog, kb, diary. Навигация — dropdown в навбаре, двухуровневое меню в hugo.toml. Шаблоны, сайдбар, поиск обновлены под вложенные секции.
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
---
|
||||
title: "Личный сайт (agaltsovav.ru)"
|
||||
date: 2026-03-31
|
||||
tags: ["personal-site", "hugo", "audit"]
|
||||
weight: 90
|
||||
---
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
title: "Бинарный файл в репозитории"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
В корне репозитория лежат два файла, которые не должны быть в git:
|
||||
|
||||
- **`Шаблоны для сайта.key`** — Apple Keynote файл (бинарный)
|
||||
- **`logo.psd`** — Photoshop файл (бинарный)
|
||||
|
||||
### Что не так
|
||||
|
||||
- Увеличивают размер репозитория
|
||||
- Git неэффективно хранит бинарные файлы (каждая версия — полностью)
|
||||
- `.key` файлы могут содержать конфиденциальные данные шаблонов
|
||||
|
||||
### Рекомендация
|
||||
|
||||
1. Перенести в отдельное хранилище (Google Drive, облако)
|
||||
2. Удалить из git-истории через `git filter-repo`
|
||||
3. Добавить в `.gitignore`: `*.key`, `*.psd`, `*.sketch`
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: "Copyright без 2026 года"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
В `params.toml`:
|
||||
```
|
||||
copyRight = "Copyright (c) 2020-2025 Антон Агальцов"
|
||||
```
|
||||
|
||||
Сейчас 2026 год — нужно обновить.
|
||||
|
||||
### Рекомендация
|
||||
|
||||
Обновить на `2020-2026`. Или сделать динамическим через Hugo template:
|
||||
```
|
||||
Copyright (c) 2020-{{ now.Year }} Антон Агальцов
|
||||
```
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
title: "Digest не обновлялся с февраля 2025"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
Последний дайджест — **февраль 2025**. С тех пор 12+ месяцев без новых выпусков.
|
||||
|
||||
### Что есть
|
||||
|
||||
- 27 файлов дайджестов (январь 2023 — февраль 2025)
|
||||
- Автоматизация через `digest.js` — скрипт для генерации
|
||||
- Но скрипт не запускается автоматически
|
||||
|
||||
### Риск
|
||||
|
||||
Low — контент устаревает, SEO-позиции падают для страниц дайджестов.
|
||||
|
||||
### Рекомендация
|
||||
|
||||
1. Настроить cron/CI для ежемесячной генерации дайджеста
|
||||
2. Или интегрировать с OpenClaw — авто-сборка дайджеста на основе новых публикаций
|
||||
@@ -0,0 +1,22 @@
|
||||
---
|
||||
title: "Устаревший Node.js 16 в Netlify"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site", "infrastructure"]
|
||||
severity: high
|
||||
status: open
|
||||
---
|
||||
|
||||
# Устаревший Node.js 16 в Netlify
|
||||
|
||||
**Файл:** `netlify.toml:5`
|
||||
|
||||
```
|
||||
NODE_VERSION = "16.16.0"
|
||||
```
|
||||
|
||||
Node.js 16 вышел из поддержки (EOL) в сентябре 2023. Сборка на Netlify может начать падать или работать некорректно.
|
||||
|
||||
**Рекомендация:** Обновить до Node.js 20 LTS:
|
||||
```toml
|
||||
NODE_VERSION = "20"
|
||||
```
|
||||
@@ -0,0 +1,17 @@
|
||||
---
|
||||
title: "Yandex Metrika отключена"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
В `params.toml`: `yandexMetrika = false`
|
||||
|
||||
Аналитика с сайта не собирается. Непонятно, есть ли вообще посетители и какие страницы популярны.
|
||||
|
||||
### Рекомендация
|
||||
|
||||
1. Включить Yandex Metrika или перейти на **Plausible** / **Umami** (privacy-friendly)
|
||||
2. Если сайт не нуждается в аналитике — оставить как есть
|
||||
3. Альтернатива: Netlify Analytics (уже встроен в хостинг)
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: "Отсутствуют node_modules — нужна установка"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
`node_modules/` отсутствует — проект нельзя собрать без `npm install`.
|
||||
|
||||
### Риск
|
||||
|
||||
Low — стандартная ситуация. Но:
|
||||
|
||||
- `package-lock.json` привязан к Node 16, а на Mac Studio текущий Node v24
|
||||
- Могут быть конфликты зависимостей (canvas, babel, postcss)
|
||||
- Hugo 0.148.2 ставится через `hugo-installer` в npm — может не совпасть с глобальным Hugo
|
||||
|
||||
### Рекомендация
|
||||
|
||||
1. Убедиться что `npm install` проходит без ошибок на текущем Node
|
||||
2. Если нет — обновить зависимости или использовать nvm для Node 16
|
||||
3. Рассмотреть переход на глобальный Hugo вместо `exec-bin`
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
title: "Hugo Doks 0.5 — сильно устарел"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
Проект использует тему **Hyas/Doks v0.5.0** (package.json). Актуальная версия Doks — **1.x** с полной переработкой архитектуры.
|
||||
|
||||
### Что не так
|
||||
|
||||
- Doks 0.5 использует устаревший Bootstrap 5.2.0-beta1
|
||||
- Hugo 0.148.2 в зависимостях — новый, но интеграция с темой старая
|
||||
- Конфигурация через `theme.toml` — в новых версиях перешли на другой формат
|
||||
- `exec-bin` для вызова Hugo — устаревший подход, текущие версии Hugo ставятся глобально
|
||||
|
||||
### Риск
|
||||
|
||||
Medium — работает, но миграция на Doks 1.x потребует значительного рефакторинга layout-ов и конфигурации. Чем дольше откладывать — тем сложнее.
|
||||
|
||||
### Рекомендация
|
||||
|
||||
Запланировать миграцию на Doks 1.x или перейти на чистый Hugo + Bootstrap без зависимости от темы-фреймворка.
|
||||
@@ -0,0 +1,26 @@
|
||||
---
|
||||
title: "Twitter handle не соответствует имени"
|
||||
date: 2026-03-31
|
||||
tags: ["audit", "personal-site"]
|
||||
---
|
||||
|
||||
## Проблема
|
||||
|
||||
В `params.toml` указан Twitter: `@AntonTotoshkin`
|
||||
|
||||
Но владелец сайта — **Антон Агальцов**. Ники не совпадают.
|
||||
|
||||
### Два варианта
|
||||
|
||||
1. Это твой старый/другой аккаунт — тогда ок, но стоит указать актуальный
|
||||
2. Это чужой аккаунт — тогда нужно убрать или исправить
|
||||
|
||||
### Затронутые места
|
||||
|
||||
- `twitterSite = "@AntonTotoshkin"`
|
||||
- `schemaAuthorTwitter = "https://twitter.com/AntonTotoshkin"`
|
||||
- `schemaTwitter = "https://twitter.com/AntonTotoshkin"`
|
||||
|
||||
### Рекомендация
|
||||
|
||||
Указать актуальный Twitter/X или убрать, если соцсеть не используется.
|
||||
Reference in New Issue
Block a user