Demir Kaan monogram

Case Study

ZeiTown

React + Zustand village strategy board with multilingual UI, offline-ready dice rolls, and a built-in trade desk.

Role

Lead developer — system design, state management, and gameplay UX.

Stack

React · TypeScript · Zustand · Tailwind

Problem

Tabletop sessions stalled because of manual bookkeeping, confusing rent rules, and no shared log when disputes appeared.

Solution highlights

  • Deterministic dice helpers and Zustand-powered state keep turns fair and reproducible.
  • Multilingual start/setup flow with offline-ready animations preserves the village aesthetic anywhere.
  • Trade desk, mortgage/upgrade actions, and a live event feed surface every decision instantly.

Impact

Reduced setup friction, sped up turns, and cut disputes by logging every move — making room for strategy instead of bookkeeping.