Личный продукт · Поддерживается

Этот сайт — трёхъязычный персональный хаб

Быстрое и доступное пространство для моих проектов и текстов, показывающее не только результат, но и ход инженерных и продуктовых решений.

Роль
Владелец продукта, дизайнер и инженер
Сроки
авг. 2026 г. — Поддерживается
Технологии
Astro · TypeScript · Tailwind CSS · Markdown · Netlify
Главная страница персонального хаба Дениса Бунченко на экране компьютера
Главная страница персонального сайта. Скриншот продукта.

Задача

Обычная лента блога не показывала широту моей работы. Новому посетителю нужен был короткий путь от понимания, кто я, через убедительные примеры к возможности начать разговор.

Ограничения

  • Сайт должен был оставаться статическим, быстрым и недорогим в эксплуатации.
  • Английская, русская и польская версии требовали равнозначных маршрутов и метаданных.
  • Интерфейс должен был сохранять спокойствие и читабельность, поддерживая поиск, комментарии, рассылку и полноценное SEO.

Моя роль

Я определил рамки продукта, адаптировал визуальную систему, собрал сайт на Astro, создал трёхъязычный процесс публикации и автоматические проверки качества.

Ключевые решения

Относиться к контенту как к структурированным данным продукта

Статьи и проекты хранятся в валидируемых коллекциях Astro. У кейса есть стабильная схема для статуса, роли, решений, результатов, медиа и связанных статей вместо уникальной разметки каждой страницы.

Предпочесть статический HTML и небольшие улучшения

Astro заранее рендерит основной опыт. JavaScript используется только для конкретных взаимодействий — поиска и выбора языка, что снижает стоимость выполнения и количество точек отказа.

Сделать локализацию частью архитектуры

Общие шаблоны создают три языковых дерева, а переведённые файлы сохраняют удобство работы с большим текстом. Canonical, hreflang, RSS, sitemap и структурированные данные проверяются при сборке.

Построить образ сайта на редакционной сдержанности

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

Результаты

  • Статически сгенерированный персональный хаб с локализованными страницами Home, Projects, Blog, About, Contact, RSS, sitemap и социальными метаданными на трёх языках.
  • Автоматические проверки Astro, TypeScript, ESLint, Prettier, production-сборки и SEO работают локально и в CI.
  • Поиск, рассылка, комментарии, адаптивная вёрстка, клавиатурная навигация и reduced motion реализованы без клиентского фреймворка.

Выводы

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

Скриншоты

Десктопная версия главной страницы персонального хаба
Главная страница ведёт от специализации к проектам, текстам и текущим приоритетам.
Десктопная версия списка проектов
Индекс сразу показывает цель проекта, мой вклад и статус.

Статус реализации

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

Дальше в планах: добавлять кейсы только вместе с публичными доказательствами, обновлять результаты по мере использования сайта и убирать элементы, которые не помогают понять работу.

Процесс публикации

Большие тексты остаются в Markdown и проходят валидацию при сборке. Каждое изменение проходит форматирование, линтинг, проверку типов, Astro, production-сборку и контроль сгенерированного результата перед публикацией на Netlify.

Компромиссы

Файловый процесс прозрачен, версионируем и переносим, но требует уверенной работы с Git и Markdown. Три языка также добавляют редакционную нагрузку. Я принимаю обе цены, потому что контроль, устойчивые URL и проверяемый результат здесь важнее редактирования в браузере или мгновенной публикации.