Добавить в корзинуПозвонить
Найти в Дзене
DstLab

Как мы модернизировали сайт военных архивов и сделали поиск по базе удобнее и безопаснее

Не каждый веб-проект создаётся для продаж. Иногда сайт нужен для более важной задачи — сохранить память, структурировать данные и дать людям доступ к информации, которую сложно найти в разрозненных источниках. В этом кейсе рассказываем о социально значимом проекте: сайте военных архивов и списков погибших российских солдат. Проект был направлен на сохранение памяти о погибших в трагических обстоятельствах, военных конфликтах и катастрофах. Сайт позволяет пользователям искать информацию по базе: ФИО, дата смерти, регион, участие в конфликте и другие данные. Наша задача состояла в том, чтобы модернизировать уже существующий MVP, перенести сайт на более стабильную платформу, улучшить дизайн, структурировать данные и обеспечить более безопасное хранение информации. Проект представляет собой некоммерческий веб-ресурс, ориентированный на граждан России и русскоязычных пользователей. Основная идея сайта — создать централизованное место, где можно найти структурированную информацию о погибших
Оглавление

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

В этом кейсе рассказываем о социально значимом проекте: сайте военных архивов и списков погибших российских солдат.

Проект был направлен на сохранение памяти о погибших в трагических обстоятельствах, военных конфликтах и катастрофах. Сайт позволяет пользователям искать информацию по базе: ФИО, дата смерти, регион, участие в конфликте и другие данные.

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

О проекте

Проект представляет собой некоммерческий веб-ресурс, ориентированный на граждан России и русскоязычных пользователей.

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

Сайт должен был быть:

— доступным для широкой аудитории;
— понятным для пользователей без технической подготовки;
— удобным для поиска по базе;
— безопасным для администрирования;
— устойчивым к техническим сбоям;
— пригодным для дальнейшего развития.

На момент подключения команды проект уже существовал в формате MVP. Он был создан минимальными техническими средствами и выполнял базовую функцию, но требовал серьёзной модернизации.

-2

С какой задачей к нам пришли

Изначальная версия сайта содержала неструктурированные HTML-страницы. Это усложняло поиск, обновление информации и дальнейшее развитие проекта.

Перед командой стояли ключевые задачи:

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

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

-3

Сроки и бюджет

Работа над проектом заняла 2,5 месяца.

В этот срок вошли:

— проектирование;
— перенос контента;
— настройка CMS;
— доработка шаблона;
— настройка поиска;
— базовые меры безопасности;
— тестирование;
— подготовка к запуску.

Все договорённости с заказчиком были соблюдены.

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

Как формировались требования

Требования формировались совместно с некоммерческой инициативной группой, которая курировала проект.

В обсуждениях участвовали:

— редакторы и архивисты, отвечающие за наполнение базы;
— IT-волонтёры, которые ранее поддерживали старую версию ресурса;
— представитель НКО со стороны заказчика.

Коммуникация была максимально простой и прозрачной. Использовались Zoom-созвоны, Google Docs и Trello.

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

Как была организована работа

Работа велась по Scrum-подходу.

Мы использовали:

— Notion для планирования и документации;
— Trello для задач и статусов;
— двухнедельные спринты;
— Slack для обновлений и отчётов;
— демонстрации раз в спринт;
— еженедельные демо и ретроспективы.

Внутри команды проходили чат-обсуждения и регулярные звонки. Когда нужно было принять архитектурное решение, проводились отдельные воркшопы.

Такой подход помог держать проект под контролем и постепенно двигаться от старой версии к новой.

Команда проекта

В работе участвовали:

— frontend-разработчик;
— backend-разработчик;
— UI/UX-дизайнер;
— QA-инженер;
— project manager.

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

Технологический стек

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

Использовались:

— frontend: HTML, CSS, SCSS, JavaScript;
— backend: PHP + MySQL;
— CMS: WordPress с кастомизированной темой;
— сервер: Nginx;
— хостинг: Selectel.

Сайт был перенесён с более простого shared-хостинга на более стабильную инфраструктуру.

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

Основные технические сложности

1. Миграция контента

Старая версия сайта содержала неструктурированные HTML-страницы.

Это означало, что данные нельзя было просто перенести «как есть». Их нужно было разобрать, привести к единому формату и загрузить в базу CMS.

Мы провели парсинг старого контента и автоматизированный импорт данных в базу.

Это позволило превратить разрозненные HTML-страницы в более управляемую структуру.

После миграции данные стало проще обновлять, искать и поддерживать.

2. Безопасность и защита административной части

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

Были внедрены базовые меры защиты:

— защита доступа к административной панели;
— резервное копирование;
— защита от SQL-инъекций;
— перенос на более стабильный хостинг;
— проверка работы сайта после релизов.

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

3. Оптимизация поиска

Одна из главных функций сайта — поиск по базе.

Пользователь должен иметь возможность быстро найти информацию по разным параметрам:

— ФИО;
— регион;
— конфликт;
— дата смерти;
— другие данные из карточки.

Для этого был реализован быстрый поиск по базе.

Использовался сторонний поисковый плагин, который был доработан под задачи проекта.

Это позволило сделать ресурс удобнее для пользователей и снизить нагрузку на ручной поиск по страницам.

Почему поиск был критически важен

В проектах с архивными данными пользователь чаще всего приходит не просто «посмотреть сайт». Он ищет конкретного человека, регион или событие.

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

Поэтому работа над поиском стала одним из ключевых этапов.

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

Как проходило тестирование

Перед запуском сайт проходил несколько этапов проверки.

В тестирование входили:

— модульное тестирование отдельных функций;
— кроссбраузерное тестирование;
— проверка мобильной версии;
— проверка поисковых запросов;
— smoke-тесты после каждого релиза;
— проверка корректности перенесённых данных;
— тестирование административной части.

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

Что удалось реализовать

В результате работы удалось:

— модернизировать сайт;
— перенести проект на более стабильную платформу;
— структурировать данные;
— автоматизировать импорт контента;
— улучшить UX;
— настроить быстрый поиск по базе;
— защитить административную панель;
— внедрить резервное копирование;
— перенести сайт на более надёжный хостинг;
— протестировать сайт перед запуском;
— сохранить доступность проекта для широкой аудитории.

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

Что можно было бы сделать при запуске с нуля

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

Например:

— Headless CMS;
— React + Strapi;
— отдельный API;
— расширенный поиск;
— мемориальное мобильное приложение;
— личные кабинеты для редакторов;
— более сложную систему модерации данных.

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

Главный вывод

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

Команда справилась с миграцией, структурированием данных, улучшением UX, настройкой поиска и базовой защитой сайта.

Главная ценность проекта — не в коммерческих показателях, а в доступности информации и сохранении памяти.

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

Нужна модернизация сайта или перенос данных?

Если у вас есть старый сайт, архивный ресурс, база данных, каталог, справочник, портал или проект с большим объёмом контента — его можно привести в порядок и сделать удобным для пользователей.

Мы можем помочь:

— перенести сайт на новую платформу;
— структурировать данные;
— настроить поиск;
— улучшить UX/UI;
— защитить административную часть;
— настроить резервное копирование;
— перенести сайт на стабильный хостинг;
— подготовить проект к дальнейшему развитию.

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

https://dstlab.ru/sites/

Telegram: https://t.me/icevan80 Телефон: +7 913 900 3752