Готовый проект02 / 12

Запускаем Block Puzzle

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

Откроем демо Block Puzzle. Игрок переносит фигуры на поле 8 × 8. Заполненные строки и столбцы очищаются; когда ни одна фигура не помещается, партия заканчивается.

Теперь получим исходники игры. В курсе зафиксирована публичная ревизия d1dd4e3: это позволяет сверять примеры с неизменным кодом. Для локального запуска выполним команды ниже. Скрипт dev:web определён в package.json.

git clone https://github.com/gamedevland/block-puzzle.git
cd block-puzzle
git checkout d1dd4e35b3df7d71fcc6a3eca9f5133773f51177
npm ci
npm run dev:web

Потребуется Node.js 22.12+ или 24. Адрес покажет Vite; исходная конфигурация использует порт 5173. После запуска проверим один ход, изменение очков и перезапуск партии.

Где искать код

package.json · vite.config.tsЗависимости, команды запуска и настройки сборки
game/src/configGameConfig, манифест ресурсов и глобальный DI
game/src/scenes/gameFSM, команды, сервисы, доменные классы и компоненты
game/assets/jsonКонфиги, вёрстка и повторяемые визуальные заготовки
Папка game содержит браузерную часть. Vite запускается из корня репозитория.

Для первого запуска используем зависимости из package-lock.json: команда npm ci устанавливает закреплённый в нём набор пакетов.

Команды npm run typecheck, npm run lint и npm run build:web проверяют типы, стиль кода и сборку. Успешная сборка не заменяет проверку перетаскивания в браузере.

Источники ↗

Block Puzzle · package.json↗Версии зависимостей и существующие npm scripts.Block Puzzle · vite.config.ts↗Использование общей конфигурации Vite.