Loading
Loading
Loading
mobile footer

Build the Interaction Layer Your Website is Missing.

Browse All EffectsBrowse All EffectsBrowse All EffectsUpgrade to ProUpgrade to ProUpgrade to Pro

80+ effects free, forever. No credit card.

© 2026 Hyperiux. All Rights Reserved.

AI Component CatalogueHey AI, Learn About Us
Platform

Vault

  • Documentation
  • Pricing
  • Blog
  • Community
  • NPM
  • MCP

Categories

  • All Effects
  • WebGL
  • Text
  • Backgrounds
  • Buttons
  • Carousels
  • Scroll
  • Components
  • Navigation
  • Cursor
  • Transitions
  • Loaders

Documents

  • Introduction
  • Installation
  • CLI
  • Dependencies
  • License

Legal

  • License Agreement
  • Terms of Service
  • Privacy Policy
  • Refund Policy
Socials
  • Twitter / X
  • LinkedIn
  • GitHub
  • Instagram
Contact Us
  • hello@hyperiux.com
New effects, in your inbox

Every new drop, plus the occasional behind-the-scenes build. No spam. Unsubscribe anytime.

Loading
Home/Radio Component

Radio Component

An animated radio component with sliding selection indicators, interactive option cards, elastic feedback, and customisable selection states for modern forms and product interfaces.

motion
DemoDemoDemo

Tune the Real Props

Overview

Radio slides its active dot from the previous choice to the new one, and in card layouts the selected background glides between options. Optional elastic feedback adds a short bounce on press, while the group keeps standard single-selection behaviour.

Use it for mutually exclusive choices users should compare before picking, such as delivery methods, billing periods, roles, and product variants. Animation should make the active choice clearer, not add noise.


Theme and Interaction Customisation

Choose inline or card layouts, outlined, filled, or solid controls, muted or primary card backgrounds, per-option accent colours, and whether the icon shows. Interactions include the sliding dot, sliding card background, elastic feedback, and draggable ordering.


Example Production Use Case

An ecommerce checkout can list Standard, Express, Same day, and Collect delivery as cards with prices and estimates. Choosing Express glides the highlight across while the order total updates.

A SaaS billing page can use inline radios for monthly or yearly billing, with the sliding dot making the switch obvious at a glance.

An onboarding step can ask users to pick their role from text-led cards with the icon hidden, keeping the choice visual and quick on mobile.


Best Used For

  • Checkout and delivery preferences.
  • Subscription and billing periods.
  • Product variants and configuration modes.
  • SaaS onboarding questions with one answer.
  • Account settings with exclusive choices.
  • Questionnaires and booking flows.

Not For

When users can pick several options, use Checkbox instead.

Very large lists need a searchable selector or dropdown rather than dozens of visible radios.

For page navigation use Tabs, and for instant on/off settings use a toggle. Only enable drag reordering when order actually matters.


Performance Budget

Animate the shared indicator without per-frame layout work, follow the latest selection during rapid switching, keep elastic effects short, and use stable IDs when reordering. Don’t animate while the group is idle.


Accessibility and Mobile

Use semantic radio groups with labels, accurate checked states, arrow-key navigation, and focus styles distinct from selection. With the icon hidden, selection must still show without relying on colour alone. On mobile, keep targets comfortable and indicators aligned when labels wrap, offer an alternative to dragging, and with reduced motion remove sliding and bounce.


Common Mistakes

  • Allowing more than one active option.
  • Letting the indicator drift from the real form value.
  • Using sliding or elastic settings outside their supported layouts.
  • Losing the selection during reordering.
  • Styling focus and selection the same way.
  • Overusing elastic bounce.
  • Ignoring reduced-motion preferences.

Changelog

v1.0.0

Oct 23, 2026
Initial release

API Reference

PropTypeDefaultDescription
themestringvalorantColour palette. The selected radio and its dot take its primary colour; the selected card too when Card fill color is Accent.
modestringdarkLight or dark version of the palette. Starts dark.
variantstringcardInline radios or bordered cards.
cardFillColorstringaccentFill of the selected card: a muted tint or the solid accent. Needs Style set to Cards.
showIconbooleantrueShow the radio circle next to each label.
showDescriptionbooleantrueShow each option's description line.
slideDotbooleanfalseThe dot glides from the old choice to the new one. Needs Icon on, and not used by the Full look.
slideCardbooleantrueThe card highlight glides between cards. Needs Style set to Cards.
elasticbooleantrueThe radio squashes and springs back when picked. Needs Icon on.
appearancestringoutlineRadio look: an outline ring, a filled ring or one solid circle. Needs Icon on.
reorderbooleantrueDrag options up and down to reorder them.
colorfulbooleanfalseUse each option's own accent colour.

Questions, Answered.

What is Radio?

Radio is an animated React component for selecting one option from a group, with sliding indicators, selectable cards, elastic feedback, and customisable states.

Does Radio support different layouts?

Yes. It offers a compact inline style and a card layout that highlights the whole selected option.

Can the selected card background move between options?

Yes. Slide card lets one background glide between cards in card layouts.

Does Radio support keyboard navigation?

Yes. Arrow keys plus Home and End move through options. Verify full focus behaviour in the shipped implementation.

Does Radio support drag-to-reorder?

Yes. Users can reorder choices, and each option’s value and selection should be preserved.

What is the difference between Radio and Checkbox?

Radio allows one selected value per group, while Checkbox lets several options stay active.

View MoreView More

Request a Custom Animation

Need a custom effect? Tell us what to create.

Related Effects

Explore All EffectsExplore All EffectsExplore All Effects
Questionnaire Component
@base-ui/reactclass-variance-authoritymotion

Questionnaire Component

Components

Switch Component
@base-ui/reactmotiontailwind-merge

Switch Component

Components

Button Component
lucide-reactmotiontailwind-merge

Button Component

Components

Hover Card Component
@base-ui/reactclass-variance-authoritylucide-react

Hover Card Component

Components

All Effects
Featured ComponentsText AnimationsAnimated BackgroundsAnimated ButtonsCarousel EffectsScroll EffectsCreative ComponentsNavigationsCursor EffectsTransitionsLoadersWebGL & 3D Effects
Templates
IntroductionInstallationCLIDependenciesLicense
PricingBlogGithubNPMMCP Doc