Chuck
A stealth platformer up the inside of a sealed forty-story tower. Every pixel and every sound is generated by code, so the browser version is about 600 kilobytes.
Robert Libsansky
I build things that fit in kilobytes: games that draw every pixel in code, iPhone apps that work offline without ads, and web apps with as few dependencies as possible. This is where I write down how they are made and what I learn on the way — including where AI helps and where it doesn’t.
A stealth platformer up the inside of a sealed forty-story tower. Every pixel and every sound is generated by code, so the browser version is about 600 kilobytes.
A neon brick-breaker played as a roguelite, written in C with SDL3: towers instead of walls, perks, bosses and a daily run that needs no server.
An arcade space shooter for iPhone and iPad, written in Swift and SpriteKit with vector graphics drawn in code and no sprites at all.
Chess against a home-made Swift engine at five levels, with a full game review after every game. No ads, no purchases, no network code.
Three new free games for iPhone and iPad: Chess Offline, Mini Golf 3D and Klondike Solitaire. No ads, no in-app purchases, no internet needed — just the game.
Breakup is a free neon brick-breaker played as a roguelite, written in C with SDL3. Towers instead of walls, perks, bosses and a daily run with no server.
Chuck is a free stealth platformer up the inside of a sealed tower. Every pixel and sound is generated by code, so the browser version is about 600 kilobytes.
How AI has fundamentally changed what junior developers need to learn — why the traditional path of learning by coding is gone and what to focus on instead.
Creating a 2D arcade shooter for iOS using Swift and SpriteKit. Exploring native development, data-driven level design, and vector-based graphics.
How AI shifts the build vs. buy decision for npm packages — when to use external libraries and when to write custom solutions for long-term stability.
Why AI-generated designs might saturate the market with mediocrity, making human creativity and unique perspective more valuable than ever before in design.
How deep CSS expertise made me resist Tailwind for years — a personal story about when experience blinds us to innovation and why experts can be wrong.
Why AI demands deeper understanding from developers — exploring how artificial intelligence shifts our focus from mechanical coding to system architecture.
After working with Next.js, I went back to single page applications for admin interfaces. Here is why an SPA fits apps that live behind a login.
New posts about small software, games and the web. Subscribe via RSS or follow @RobertLibsansky on X.