Strut is an open-core spatial presentation editor that lets users create decks of slides arranged in 3D space, with a camera flight presentation mode (impress.js-like). The application is built with React 19, TanStack Start, Vite, Tailwind 4, and TipTap/ProseMirror for rich text editing. The data layer is powered by Rindle, a custom sync engine providing optimistic local-first updates with live queries and a server daemon. Auth is handled by Better-Auth with anonymous guest-first sessions, optionally upgrading to OAuth. The application is designed to be self-hosted on Cloudflare Workers, using D1 for data and R2 for file storage, with a separate Rindle daemon for sync. AI features are a core part of the editor, allowing users to generate slides, arrange layouts, chat with the AI to edit content, and narrate from transcripts. All AI features run on the user's own OpenRouter API key (BYOK), with server-side normalization and trust boundaries to sanitize AI outputs. The editor includes a precision canvas for direct manipulation of components (text, images, shapes, video, webframes, and runnable 'artifact' components), a filmstrip slide well, and a chat panel for AI interactions. The application follows an open-core model: the open-source version is fully functional with community entitlements, while a private commercial overlay (sealed behind a #commercial module seam) adds Pro features like private decks and increased limits. Deployment is via pnpm commands, with local development using a Rindle fleet and production targeting Cloudflare Workers. The codebase demonstrates high craftsmanship in several areas: isomorphic mutator pattern (same mutation bodies run on client and server), trust-boundary normalizers for AI outputs, a history/undo system that treats AI edits as single atomic commands, and component fragments for efficient live subscriptions. However, there are some maintenance risks from duplicated constants, retired database columns, and the complexity of the commercial overlay.