trove/cn

The gap between web and native

Most components stop listening the moment you press.

These track your input the whole way, reverse from where they are, and can be grabbed mid-animation. Copy the source, own it.

01 — The difference

Same data, same reorder. Only one of them tells you what moved.

Biryani1
Biryani
82
Butter Chicken2
Butter Chicken
71
Masala Dosa3
Masala Dosa
64
Samosa4
Samosa
53
Gulab Jamun5
Gulab Jamun
41
Biryani1
Biryani
82
Butter Chicken2
Butter Chicken
71
Masala Dosa3
Masala Dosa
64
Samosa4
Samosa
53
Gulab Jamun5
Gulab Jamun
41
Snap
Smooth

02 — What installs

Four interactions, described by what they do under your hand.

Grab it and the track thickens. Push past either end and the whole bar stretches, giving less the harder you pull, then snaps back when you let go.

Volume
72%
Brightness
45%
Warmth
18%

Notifications collapse into a pile with the edges underneath peeking out. Pull to fan them apart; throw one sideways and the rest close the gap, then restack.

Notifications
  • Review requestednow

    danabramov opened “Drop the scheduler”.

  • Deploy finished4m

    Build 1841 shipped in 2m 11s.

  • Invoice #4021 paid12m

    Northwind Trading, $12,480 by ACH.

  • Design review38m

    Starts in 15 minutes.

The row you press becomes the detail view. Leave before it lands and it turns around from where it is, rather than finishing the trip and playing the close from rest.

Drag the label to scrub the value under pointer lock, or click the number and type. The cursor never runs off the edge.

Layout

03 — Underneath

Built on 15 primitives carrying the same motion — Accordion, Button, Checkbox, Checkbox Group, Combobox, Context Menu, Dialog, Drawer, Menu, Navigation Menu, Popover, Slider, Switch, Tabs, Tooltip.

Nobody tells you an interface feels cheap. They just leave.

Read why that happens