Carousel Studio

Repurpose X Threads into LinkedIn & Instagram Carousels

Canvas & Ratio

Choose your destination platform format


Layout Template

Choose a content structure for your slides


Preset Themes


Typography & Sizing

Title Font Size36px
Body Font Size18px
Header & Footer Size12px

Brand Kit Customization

AGENCY

Configure brand assets for headers & footers

MULTI-PROFILES (AGENCY)
AGENCY
SAVE PRESETS (AGENCY)

Outro Slide CTA

Customize your closing call-to-action slide

#1
#2
#3

Background Pattern

Source Content

Build Your Carousel

Drag and drop any post card below onto a slide, or use the quick buttons to insert content/images instantly!

Drag Post #1
Thariq
@trq212

We’ve rewritten Claude Code’s terminal rendering system to reduce flickering by roughly 85%. We wanted to share more about why this was so difficult, how the fix works and how we used Claude Code to fix it 🧵

Drag Post #2
Thariq
@trq212

When rendering in a terminal there are two regions: the viewport at the bottom and the scrollback buffer above it. When content exceeds the viewport height, the top row gets pushed into scrollback and some of the rendering happens offscreen.

Apply Image
Drag Post #3
Thariq
@trq212

Unlike regular CLI tools that print output and exit, Claude Code is a long-running interactive UI. We redraw our viewport dozens of times per second. When we render offscreen or the terminal resizes, we have to clear the scrollback each time. That's the flicker.

Apply Image
Drag Post #4
Thariq
@trq212

Over the past few months, we've rewritten our rendering system from scratch. We now diff each cell and emit the minimal escape sequences needed to update what changed. We only do full redraws when we absolutely have to.

Drag Post #5
Thariq
@trq212

Why not virtualize scrolling? When you something like emacs, the terminal switches to an "alternate screen". The program controls everything: scrolling, selection, the works. When you exit, your previous terminal content reappears. This would solve flicker entirely.

Drag Post #6
Thariq
@trq212

However, you no longer get native terminal experiences for things like Cmd+F search, text selection, and copy/paste. We value this native experience a lot. We may explore alternate screen mode in the future, but our bar is quite high.

Drag Post #7
Thariq
@trq212

Why this took so long We started with almost no tests to verify rendering. It was humbling: fix something, break something else. What unblocked us was property-based testing. We wrote tests that rendered components through both the old & new systems and diffed them.

Drag Post #8
Thariq
@trq212

The tests generated thousands of random UI states—different widths, content lengths, Unicode edge cases—and verified the new renderer matched the old one. This created a feedback loop that let Claude Code easily verify its work and make progress on the issue.

Drag Post #9
Thariq
@trq212

You can read more about this in-depth in Chris's comment on this Github issue: <a target="_blank" href="https://github.com/anthropics/claude-code/issues/769#issuecomment-3667315590" color="blue">github.com/anthropics/cla…</a>