Интерактивное мультиязычное Fullstack-портфолио
Описание
Данный проект представляет собой глубокую архитектурную модернизацию и вывод в продакшн открытого Django-шаблона gurmessa/my-portfolio. Исходный код системы был переработан из базового одностраничного прототипа в безопасное, мультиязычное и высокопроизводительное Fullstack-приложение, развернутое на собственном Ubuntu-сервере.
🎯 Проделанная инженерная работа и улучшения:
- Глобальная интернационализация (i18n): Проект полностью переведен на систему мультиязычности Django. Все интерфейсные блоки, динамические заголовки вкладок (вытягивающие ФИО автора из базы данных), а также сущности проектов и блогов адаптированы под параллельное ведение на русском и английском языках через файлы локализации
django.po/django.mo. - Оптимизация производительности фронтенда: Был полностью ликвидирован критический технический долг в виде использования тяжелого скрипта Tailwind CDN на "боевом" сервере. Компиляция интерфейса переведена на официальный автономный бинарник Tailwind v4 Standalone CLI, что снизило вес стилей до 42 Кб и ускорило рендеринг страниц до подмиллисекундного уровня.
- Безопасность и CORS/CSP: Конфигурация Nginx была защищена строгими политиками безопасности. Успешно разрешен конфликт блокировок динамического выполнения JS-кода (
blocked by CSP) для реактивного движка Alpine.js, используемого в современной теме администрирования Django Unfold. - Управление внешними ресурсами: В архитектуру моделей данных добавлены новые инлайн-блоки связей, позволяющие динамически управлять кнопками целевых действий — привязывать карточки проектов к репозиториям GitHub и конкретным магазинам приложений (Google Play) с автоматической генерацией соответствующих SVG-иконок платформ.
Используемые технологии
Ключевые особенности
- Внедрена сквозная локализация интерфейса и метаданных на базе утилит GNU gettext, обеспечивающая мгновенное переключение сайта между русским и английским языками.
- Устранены задержки рендеринга за счет полного удаления клиентского Tailwind CDN и перехода на автономный Rust-компилятор Tailwind v4 с фоновой сборкой стилей.
- Осуществлен перевод инфраструктуры данных с легковесных файлов SQLite на отказоустойчивую промышленную СУБД PostgreSQL с оптимизацией связей моделей.
- Разработана динамическая система управления внешними ресурсами, автоматически генерирующая адаптивные кнопки-ссылки на официальные маркеты (Google Play).
- Настроена безопасная продакшн-конфигурация веб-сервера Nginx, включая строгие заголовки CSP (Content Security Policy) для стабильной работы скриптов Alpine.js в админке Unfold.