Lib

Docs

Getting started

1 · Pick a component

Browse components, open one, tune the playground until it feels right, then copy the usage snippet. It follows your settings live.

2 · Install in one command

No setup. This drops the component straight into your project. Single files, zero third-party dependencies. Copy the exact command from the component's page, or use the pattern:

bash
npx shadcn@latest add https://lib.tirup.in/r/<name>.json

Prefer short names? Register my namespace once, then use @mehta/<name>:

bash
npx shadcn@latest registry add @mehta=https://lib.tirup.in/r/{name}.json
npx shadcn@latest add @mehta/<name>

3 · Theming

Components read the dark class on <html> and adapt automatically. Reduced-motion users get a still frame, and simulations sleep when settled.

4 · Mobile

Interactive demos are desktop-first. Gate heavy components behind a pointer or screen-size check, load them client-side only, and skip them entirely on small screens.

5 · Performance

Cost scales with the size of the box. Demos sleep when settled, pause offscreen and in hidden tabs, and render one still frame for reduced-motion users.

6 · License

MIT. Free forever. Every component is yours once installed: copy it, modify it, ship it. No keys, no lock-in, no paid core.

7 · Credit

Liquid Ascii was inspired by React Bits' Liquid ASCII. The implementation here is my own, written from scratch.