Lichess - как устроен самый популярный opensource-шахматный сервер
Знаете ли вы, что каждую минуту на lichess.org играют около 50 тысяч шахматистов? И всё это — на полностью бесплатной платформе без рекламы, работающей на opensource-коде. Сегодня мы заглянем под капот проекта Lila, который делает это возможным.
Почему lichess — это особенный проект
В эпоху монетизированных сервисов lichess остается редким примером идеалистического подхода:
- Никакой рекламы и скрытых платежей
- Полностью открытый исходный код (AGPL 3.0)
- 140 языков интерфейса (рекорд среди шахматных платформ)
- Более 4.7 миллиардов сыгранных партий в открытом доступе

Топ-5 возможностей для игроков
- Анализ партий — встроенный движок Stockfish помогает разобрать ошибки
- Турниры и сеансы — ежедневные соревнования всех уровней
- Тактический тренажёр — база из 170 тысяч тренировочных позиций
- Мобильное приложение — полноценный клиент для iOS и Android
- Совместный анализ — доска для разбора партий с друзьями
Техническая кухня проекта
Lichess — это Scala-проект, который:
- Использует Play Framework и Akka для обработки 500+ запросов в секунду
- Хранит данные в MongoDB (4.7+ млрд партий!)
- Анализирует позиции с помощью распределённого кластера Stockfish
- Поддерживает websocket-соединения через отдельный сервер на Redis

Интересный факт: движок компьютерного анализа работает на добровольно предоставленных мощностях пользователей через систему fishnet.
Почему разработчикам стоит изучить этот проект
- Пример масштабируемой архитектуры — как обрабатывать тысячи одновременных игр
- Референсный Scala-проект — современный код на Scala 3 с Play Framework
- Полноценная API — можно интегрировать в свои приложения
- Уникальная модель разработки — проект поддерживается сообществом без коммерческой выгоды
Как начать участвовать
Проект активно принимает контрибьюторов:
- Можно помочь с переводами через Crowdin
- Участвовать в разработке через GitHub Issues
- Подключиться к сообществу в Discord
# Запуск для разработки
./lila.sh run
Вывод: стоит ли пробовать?
Lichess — редкий пример успешного некоммерческого opensource-проекта с:
- ✅ Профессиональной технической реализацией
- ✅ Огромной базой пользователей
- ✅ Активным сообществом разработчиков
Если вы:
- Scala-разработчик, ищущий серьёзный проект для изучения
- Любите шахматы и хотите улучшить игровую платформу
- Интересуетесь архитектурой высоконагруженных систем
...то Lila — идеальный проект для исследования и участия. Лично я после изучения кода получил массу идей для собственных проектов!