Grzegorz Otto · Mobile + web engineer · creator of Flare (cross-platform 2D engine)
Poland · compiled from src/
I ship production React Native apps that hold the frame budget.
Senior React Native engineer. I architected and ship Poland's national radio app (~60k daily users): a custom cross-platform playback engine with CarPlay, Android Auto, and Chromecast, on custom Swift + Kotlin native modules.
In parallel I build Flare, a 40-package real-time 2D engine for React Native and Web, and Pan Tvardowski, a vertical shoot-'em-up themed on Polish folklore that doubles as its hardest stress-test.
I run an AI-directed agent loop - local LLMs, custom skills, and instruction files - to ship monorepo-scale output at team velocity. Architecture-minded (Clean Architecture · DDD · ECS · TDD) and rule-minded (SOLID · KISS · DRY · YAGNI), as tools, not dogma.
static-exported · zero runtime DB reads
Flare — a 40-package engine that runs the same code on Web (CanvasKit) and React Native (Skia), in development. Showcase: Pan Tvardowski.
75% complete
- posts
- 12
- flare packages
- 40
- engine tests
- 2288
- engine packages exercised
- 31/40
Featured projects
- PINNED2026
Polskie Radio — national broadcaster app
Poland's national public broadcaster needed a single mobile app covering live radio (4 national + 17 regional stations), on-demand podcasts, offline downloads, and handoff to car head units and Chromecast. The previous stack was fragmented across platforms, and playback state drifted between the UI, lock screen, CarPlay/Android Auto and cast targets. The app had to keep playing reliably through network drops, app backgrounding, OS process death, and transitions between local audio, cast, and car surfaces — without the UI and the native media session ever disagreeing about what is playing.
React NativeExpo SDK 55TypeScriptKotlinSwiftExpo ModulesTanStack QueryMMKVUnistyles 3CarPlayAndroid AutoChromecastFirebase AnalyticsGemiusSentry - PINNED2026
Pan Tvardowski — Polish-folklore vertical shmup
Flare engine needed a production-grade showcase — one that exercises every layer, tells a coherent story, and is genuinely shippable. The genre (vertical shmup) is mechanically rich but small enough for a solo author. The setting (16th-century Polish folklore: Pan Twardowski, the Devil's bargain, exile to the Moon) is underused in games and culturally specific enough to stand out. The game also needed to answer a hard question for the engine: does Flare hold up across all 40 packages, including tier-2 platform services, IAP entitlements, i18n, a11y, and store-ready bundles?
TypeScriptReact Native@shopify/react-native-skiaFlare engine (40 packages)MMKVEASICU pluralsreact-native-gesture-handlerreact-native-audio-apiPolyForm Noncommercial 1.0.0 - PINNED2026
Flare engine — 2D engine for Web + React Native
Teams rebuild animation and interactive UI twice — once for web, once for mobile — and reach for heavy game engines or pre-baked tools (Lottie/Rive) that cannot express real dynamics. There was no single 2D engine that runs the same TypeScript on both targets, stays SEO-indexable and accessible, and still gives you physics, particles, and an ECS when you need them.
TypeScriptReact Native@shopify/react-native-skiaCanvasKitplanck.jsbitmask ECSBunTurborepotsupBiomeChangesetsMMKVreact-native-audio-apireact-native-gesture-handler
Latest posts
- Game accessibility: reduced motion as a first-class mechanic8min
- Game IAP architecture: free, buy-once, freemium in one API8min
- 40 packages, 1 dev: Turborepo + Bun + Biome monorepo stack9min
- How I test a game engine deterministically: fake clocks, seeded RNG, and golden schedules7min
- I built generator coroutines for my game engine, then didn't use them6min