Inline Diff
ProA code change streaming in the way an agent writes it: removed lines strike through first, each block of additions develops in from a blur top to bottom, unchanged context folds away, and Accept or Reject collapses the losing side out of the block.
The three queries after the user lookup don't depend on each other, so I'll run them together.
Installation
npx shadcn add @useplanes/inline-diff
Unlock with Planes Pro
$99 once · 80 Pro components · lifetime updates.
<InlineDiff
fileName="app/dashboard/page.tsx"
before={original}
after={edited}
onAccept={applyEdit}
onReject={discardEdit}
/>Examples
Static patch
Turn off autoPlay and hide the actions to show a finished change.
<InlineDiff before={a} after={b} fileName="config.ts" autoPlay={false} showActions={false} />Own the decision
Control decision when the accept happens elsewhere, like a toolbar for the whole file set.
<InlineDiff before={a} after={b} decision={applied ? "accepted" : "pending"} showActions={false} />Use cases
Coding agents
Show the edit an assistant is making as it writes it, with the user deciding at the end.
AI rewrite suggestions
Prose, config or SQL changes proposed by a model, reviewed line by line.
Pull request summaries
A compact, animated patch for release notes or changelog pages.
Migration previews
Show what a codemod will do to a file before the user runs it.