Investigations

Presentation Editor (Codex)

TypeScript November 2025

The same slide editor concept built with OpenAI Codex — part of a 3-way AI tool comparison experiment.

The second entry in my three-way AI comparison. Same brief — build a PowerPoint-style editor and viewer — but this time using OpenAI Codex.

Codex took a different approach: shadcn/ui for the component library (Kimi's version didn't use one), Immer-backed Zustand reducers, and a 60fps performance target with requestAnimationFrame-driven updates. The debounced 500ms localStorage persistence is a nice touch.

The README is actually a detailed specification document rather than user-facing documentation — which tells you something about how Codex structured its thinking. The codebase is smaller (87 KB vs Kimi's 227 KB) but the architecture is arguably more considered.

The value isn't in any single version but in the comparison. Same problem, three AI tools, three different solutions.

What this project demonstrates

Part 2 of 3-way AI comparison experiment
shadcn/ui component library (vs Kimi's custom approach)
Immer-backed Zustand reducers
60fps target with requestAnimationFrame updates
Debounced 500ms localStorage persistence
Specification-as-README approach

Technologies

ReactZustandPresentationAI ComparisonCodex

© 2026 Jonathan Leahy · v1.0.9