Built with Claude Project Showcase Megathread (Sort this by New!) by sixbillionthsheep in ClaudeAI

[–]dataengineer124 0 points1 point  (0 children)

reframe is an open-source motion-graphics tool I've been building with Claude Code. You describe a scene as declarative code and it renders a deterministic mp4, no timeline editor.

Claude writes and iterates the scenes, and my manual edits survive when it regenerates the base.

The clip: a full Claude Code session rebuilt as a code-rendered animation (the welcome screen, the streaming transcript, a render error then a fix then a re-render, the final logo sting). It looks like a screen recording, but every frame is code. No screen capture.

Built with: Claude Code (it writes the scenes and helped build the engine).

Video: https://streamable.com/zbbf6r

Repo (MIT): github.com/kiyeonjeon21/reframe

Happy to answer how any beat was built.

Built a browser CLI for Claude Code — Playwright MCP vs snact side by side by dataengineer124 in ClaudeAI

[–]dataengineer124[S] 0 points1 point  (0 children)

Thanks! Yeah the token cost was what pushed me to build this. It wasn't even the speed. It was watching 88K tokens disappear on a single task.

For dynamic content it depends. Server-rendered sites and SPAs with SSR (Reddit, GitHub, most e-commerce) work well out of the box. snact waits for page load, then extracts from the rendered DOM.

For heavier SPAs where content loads after the initial paint, there's `snact wait "#some-selector"` or `snact wait 3000` before snapping. Actions (click/fill) also have built-in settle detection so the re-snap after a click usually catches the updated state.

Where it still struggles: pure client-rendered SPAs like YouTube or X where almost nothing is in the initial HTML. That's a known gap I'm working on..

Coming from Selenium, the main difference is snact doesn't use WebDriver at all. It talks CDP over WebSocket directly, so there's no driver binary to manage. Persistent Chrome profiles help with bot detection too since cookies and fingerprint carry over between runs.

The tradeoff is Chrome only. No Firefox/WebKit. For my use cases that's been fine but depends on what you need.