Собственный проектСайт-директория
ClonedGames — каталог игр
с открытым кодом.
Связанный каталог на почти 7 000 страниц.
Разработали и запустили ClonedGames: сбор данных, наполнение с ИИ, категоризация, связи с оригиналами, поиск и сравнения.
Посмотреть сайт
- ≈ 7 000
- связанных страниц
- 4 000+
- карточек проектов
- 2 000+
- оригинальных игр
- 600+
- сравнений
Задача
ClonedGames — наш собственный веб-сервис для поиска открытых клонов, ремейков и других проектов, связанных с оригинальными играми. Мы разработали и запустили сайт, подготовили его наполнение и организовали связи между тысячами записей.
Нужно было превратить разрозненные сведения из репозиториев, магазинов и игровых справочников в понятный каталог. Посетитель должен находить проекты по интересующей игре, платформе или жанру, понимать различия между реализациями и переходить к исходникам или странице проекта.
Масштаб работы
Создали связанный каталог объёмом почти 7 000 страниц: более 4 000 карточек проектов, более 2 000 страниц оригинальных игр и более 600 сравнений, а также разделы по жанрам, движкам, темам и платформам декомпиляций.
За каждой группой страниц стоит работа с данными: сбор исходных материалов, классификация, подбор оригиналов, описания, медиа и навигационные связи. Страницы формируются из общей базы и шаблонов; наполнение готовится через разработанную систему обработки данных и редакционную проверку.
Сбор и подготовка данных
Организовали получение сведений из GitHub, GitLab, Steam, itch.io, SourceForge, Wikipedia и Wikidata. Источники решают разные задачи: репозитории дают информацию о коде и состоянии разработки, магазины — описания и изображения, справочники помогают уточнять сведения об оригинальных играх.
Исходные материалы сохраняются отдельно от извлечённых фактов и готовых описаний. Благодаря этому можно пересмотреть классификацию или заново подготовить текст по уже собранным источникам. Для обновлений предусмотрен раздельный учёт свежести данных: обработка одного источника не должна создавать впечатление, что остальные тоже обновлены.

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

ИИ-подготовка контента и контроль фактов
ИИ использовали для обработки источников, классификации и подготовки описаний. Контекст формируется из реальных материалов проекта: README, сведений репозитория, описаний и структурированных полей.
Для раздела декомпиляций разработали дополнительную проверку: утверждения в описании сопоставляются с исходным текстом, а приведённые моделью подтверждающие цитаты проверяются кодом. Неподтверждённые предложения удаляются, спорные результаты направляются на проверку. Это помогает ограничить выдуманные сведения при масштабном наполнении.
Такой процесс не заменяет редакционный контроль и не гарантирует отсутствие ошибок во всех материалах. Он позволяет использовать ИИ там, где объём работы велик, сохраняя возможность проверить происхождение фактов.

Изображения и медиа
Подготовили сбор и обработку изображений из нескольких источников. Для части медиа организовали собственное хранение, проверку доступности и удаление неработающих ссылок.
Если у проекта нет своих изображений, карточка может показывать изображение связанной оригинальной игры с явной подписью. Посетитель видит, что именно изображено, и не принимает кадр оригинала за скриншот конкретного ремейка.
Для тяжёлых анимированных изображений сделали отдельную загрузку: сначала показывается статичный кадр, затем подгружается анимация. Это сохраняет полезные медиа и снижает их влияние на первоначальное отображение страницы.
Поиск, сравнения и мобильный интерфейс
Реализовали поиск, фильтры, сортировку и постраничный просмотр. Посетитель может выбирать проекты по платформе, жанру, теме, состоянию разработки и необходимости оригинальных игровых файлов.
Сравнения показывают несколько реализаций одной игры: доступность, состояние проекта, совместимость и известные ограничения. На компьютере используется таблица, на телефоне — отдельные карточки с переключением и пролистыванием. Мобильный вариант позволяет читать сведения без сжатия широкой таблицы до размеров экрана.
Добавили блог со связями на проекты каталога, пользовательские обращения и административное управление данными.
1 / 3
Работа с производительностью и публикацией
Для каталога такого размера важны не только интерфейсы, но и стоимость запросов к базе, подготовка страниц и загрузка медиа. В ходе разработки переработали тяжёлые запросы подсчёта связанных записей, добавили кеширование данных и подготовили прогрев страниц после запуска сервера.
Организовали развёртывание приложения, базы, административной панели и медиахранилища на собственном сервере. Подготовили sitemap, метаданные, структурированные данные и правила исключения недостаточно наполненных страниц из поисковой индексации.
Результат
Запустили ClonedGames как работающий веб-сервис с тысячами связанных страниц. Реализовали полный набор основных составляющих каталога: обработку источников, наполнение с ИИ, категоризацию, подбор оригиналов, медиа, поиск и сравнения.
Проект показывает нашу работу с объёмным контентом, связанными данными, автоматизацией и пользовательским интерфейсом в рамках одного продукта. Игры и их исходный код принадлежат соответствующим авторам; наша работа — сам сервис и подготовка каталога.


