Small interface ideas, made real enough to touch.

ViComponents is a growing collection of React components, interaction patterns and motion experiments. Each one is documented in English and built to be understood, adapted and eventually shared.

01
React component

Sliding pill

A compact navigation state with a shared visual anchor.

Selected: Work

02
React component

Spring modal

A focused preview of entry, exit and intentional feedback.

03
React component

Elastic loading

A lightweight loading state that keeps the action legible.

Press again to reset
04
React component

Blast Impact

The complete Pong component, including its configurable charged rebound.

A playful systems test

Wanna play?

Move the left paddle with your cursor. Each clean rebound raises the pace and makes the next decision matter.

You 0CPU 0
Blast Impact0/5
5 player impacts to charge
Paddle / rebound
Ready to playUse pointer, keys or touch controls
Round paused
Touch controlsTap or hold
05
React component

Hover glow container

The Selected Work card surface, isolated as a reusable container.

Selected work / surface

Shiny edge. Spatial hover glow.

A reusable container for content that needs a tactile boundary.

06
React component

Button

An action primitive with configurable icon, edge, size and state.

07
React component

Text input

A clear field primitive with helper, error and icon states.

Use a clear, recognizable name.
08
React component

Dropdown

A single-value menu with configurable spatial hover feedback.

Discipline
09
React component

Selector

A single or multi-value selector with optional checkbox affordances.

Capabilities
10
React component

Color picker

A compact color field with editable value and curated swatches.

Accent color
11
React component

Date picker

A keyboard-ready calendar field with configurable week structure.

Due date