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

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

За 2 недели автономной работы спроектировала и написала с нуля Client-Side Data-Driven SPA-микродвижок без единой сторонней библиотеки. Цель проекта — оживить интерактивные книги-игры «Ужастики-2» (РОСМЭН). Что под капотом: — Стерильная слоистая архитектура по канонам SOLID и паттерну MVP (Model-View-Presenter). Бизнес-логика наглухо изолирована от UI. — Паттерн Repository (BookStorage) для кэширования прогресса и концовок в LocalStorage. — Полностью Config-driven логика: весь сюжет, ветвления, Quest Lock механики и инвентарь парсятся на лету из динамических JSON-конфигов. Движок абсолютно переиспользуемый. Проект летает со скоростью 60 FPS, потому что в нем нет ни грамма реактивного мусора.

Для техлидов, которым интересен чистый инжиниринг, а не шаблонная верстка по чужим гайдам: — Подробный разбор этой архитектурной войны опубликовала в статье на vc.ru: Архитектурный бунт: пишем Client-Side Data-Driven квест без фреймворков и воюем с ИИ за SOLID — Посмотреть чистый TS-код можно в репозитории на GitHub: Give-Yourself-Goosebumps — Поиграть в итоговый квест и заценить MVP-архитектуру в действии можно на Vercel: Give-Yourself-Goosebumps

Вхожу в геймдев и открыта к стажировкам / джуниор-позициям в командах, которые ценят архитектуру, а не костыли (рассматриваю удаленку, либо вакансии с помощью в релокации). По вопросам сотрудничества — пишите строго в личные сообщения профиля. 😎

#gamedev #typescript #frontend #architecture #indiedev