Use the Error intent of the Skeuomorphic button for the confirming action, and keep Cancel as the neutral secondary beside it . Put the destructive button on the right, where the primary sits in every other modal .
Rewrite selection is a AI Chat block from Orvain UI, built for React and Vue with a matching Figma frame.
Best for
Writing help on text someone has already written
Anatomy
A small ink pill under the selection · Explain and Improve labelled, shorten, translate, tone and more as icons · the AI mark turns and the words wave while it works, with Stop · the result opens as an ink card with a word count and a Changes switch · replace, try again or discard · restore the original
We started Orvain to stop rebuilding the same button in every project.
Our design system have lots of components that teams can use for building there product faster, and it make sure everything look the same across all of the different apps we are making.
Today it runs the dashboard, the mobile app and this website. Every component ships in React and Vue with the same props, tokens and dark mode, so a fix lands everywhere at once.
In the Orvain Library
Get Rewrite selection for your product
The block’s code in React and Vue, its frame in the Figma file, and the Orvain MCP so your AI tools build with it. Part of every Library plan, alongside every other block.
Part of AI Chat
06parts
The pieces it is built from. Keep them all, or drop the ones your product doesn’t need.
840 px
Drawn at this width and never stretched past it. Below it, controls, text and spacing step down from the box the block sits in, not the window.
Where AI Chat earns its place
Reach for AI Chat
Reach for something else
06to keep
What the block ships with. Hold on to these as you make it yours.
1 line
Is all your assistant needs. With the Orvain MCP connected, it builds the block from your own tokens and components.
Add the Orvain “Rewrite selection” block to this page: a small ink pill under the selection, Explain and Improve labelled, shorten, translate, tone and more as icons, the AI mark turns and the words wave while it works, with Stop, the result opens as an ink card with a word count and a Changes switch, replace, try again or discard, restore the original.
Rewrite selection is a AI Chat block from Orvain UI, built for React and Vue with a matching Figma frame. Best for writing help on text someone has already written.
6 parts: a small ink pill under the selection; explain and Improve labelled, shorten, translate, tone and more as icons; the AI mark turns and the words wave while it works, with Stop; the result opens as an ink card with a word count and a Changes switch; replace, try again or discard; and restore the original. Keep them all, or drop the ones your product does not need; the rest of the block holds together without them.
Yes. It is drawn at 840px and never stretched past that. Below it, its controls, text and spacing step down with the container the block sits in rather than the browser window, so it holds up in a sidebar, a tablet layout and a 390px phone without clipping or sideways scrolling.
It ships with text labels on every icon-only button, full keyboard reach with a visible focus ring, states that never rely on colour alone, text contrast that holds when you retheme it, no animation for visitors who ask for reduced motion, and click targets of at least 24px.
It is part of every Orvain Library plan: the React and Vue code, its frame in the Orvain Figma file, and the Orvain MCP server. With the MCP connected, an AI assistant such as Claude Code, Cursor or v0 can build it from one line: “Add the Orvain Rewrite selection block to this page.”
A fixed set of questions with fixed answers. An FAQ in the Accordion family is faster to read and cannot be wrong.
Join the Orvain Dispatch and get production-ready components, free to keep: React and Vue code plus the Figma frame, yours to ship.
Rewrite selection is a AI Chat block from Orvain UI, built for React and Vue with a matching Figma frame.
Best for
Writing help on text someone has already written
Anatomy
A small ink pill under the selection · Explain and Improve labelled, shorten, translate, tone and more as icons · the AI mark turns and the words wave while it works, with Stop · the result opens as an ink card with a word count and a Changes switch · replace, try again or discard · restore the original
We started Orvain to stop rebuilding the same button in every project.
Our design system have lots of components that teams can use for building there product faster, and it make sure everything look the same across all of the different apps we are making.
Today it runs the dashboard, the mobile app and this website. Every component ships in React and Vue with the same props, tokens and dark mode, so a fix lands everywhere at once.
In the Orvain Library
Get Rewrite selection for your product
The block’s code in React and Vue, its frame in the Figma file, and the Orvain MCP so your AI tools build with it. Part of every Library plan, alongside every other block.
Part of AI Chat
06parts
The pieces it is built from. Keep them all, or drop the ones your product doesn’t need.
840 px
Drawn at this width and never stretched past it. Below it, controls, text and spacing step down from the box the block sits in, not the window.
Where AI Chat earns its place
Reach for AI Chat
Reach for something else
06to keep
What the block ships with. Hold on to these as you make it yours.
1 line
Is all your assistant needs. With the Orvain MCP connected, it builds the block from your own tokens and components.
Add the Orvain “Rewrite selection” block to this page: a small ink pill under the selection, Explain and Improve labelled, shorten, translate, tone and more as icons, the AI mark turns and the words wave while it works, with Stop, the result opens as an ink card with a word count and a Changes switch, replace, try again or discard, restore the original.
Rewrite selection is a AI Chat block from Orvain UI, built for React and Vue with a matching Figma frame. Best for writing help on text someone has already written.
6 parts: a small ink pill under the selection; explain and Improve labelled, shorten, translate, tone and more as icons; the AI mark turns and the words wave while it works, with Stop; the result opens as an ink card with a word count and a Changes switch; replace, try again or discard; and restore the original. Keep them all, or drop the ones your product does not need; the rest of the block holds together without them.
Yes. It is drawn at 840px and never stretched past that. Below it, its controls, text and spacing step down with the container the block sits in rather than the browser window, so it holds up in a sidebar, a tablet layout and a 390px phone without clipping or sideways scrolling.
It ships with text labels on every icon-only button, full keyboard reach with a visible focus ring, states that never rely on colour alone, text contrast that holds when you retheme it, no animation for visitors who ask for reduced motion, and click targets of at least 24px.
It is part of every Orvain Library plan: the React and Vue code, its frame in the Orvain Figma file, and the Orvain MCP server. With the MCP connected, an AI assistant such as Claude Code, Cursor or v0 can build it from one line: “Add the Orvain Rewrite selection block to this page.”
A fixed set of questions with fixed answers. An FAQ in the Accordion family is faster to read and cannot be wrong.
Join the Orvain Dispatch and get production-ready components, free to keep: React and Vue code plus the Figma frame, yours to ship.
Which button should I use for a destructive action in a modal?
Use the Error intent of the Skeuomorphic button for the confirming action, and keep Cancel as the neutral secondary beside it . Put the destructive button on the right, where the primary sits in every other modal, so the order never changes with the risk .
Which button should I use for a destructive action in a modal?
Use the Error intent of the Skeuomorphic button for the confirming action, and keep Cancel as the neutral secondary beside it . Put the destructive button on the right, where the primary sits in every other modal .
Answers come from your docs and can be wrong. Check the sources.
Which button should I use for a destructive action in a modal?
Use the Error intent of the Skeuomorphic button for the confirming action, and keep Cancel as the neutral secondary beside it . Put the destructive button on the right, where the primary sits in every other modal, so the order never changes with the risk .
Which button should I use for a destructive action in a modal?
Use the Error intent of the Skeuomorphic button for the confirming action, and keep Cancel as the neutral secondary beside it . Put the destructive button on the right, where the primary sits in every other modal .
Answers come from your docs and can be wrong. Check the sources.