Install loading-ui into your app and build loading states that feel intentional, lightweight, and easy to ship.
loading-ui is a small custom registry of loading indicators for modern React apps. It follows the same copy-paste and CLI-friendly model popularized by shadcn/ui, but stays focused on one job: giving your product better pending states without introducing a heavy design system or animation framework.
The project currently ships a compact set of primitives that are meant to drop into the UI you already have instead of forcing a separate visual language.
Most teams either ship generic spinners everywhere or rebuild the same loading patterns per product surface. loading-ui sits in the middle:
loading-ui is designed for apps already using React, Tailwind CSS, and a components.json setup compatible with the shadcn CLI. If that is already how your project works, the install path is short: add the registry, install a component, and style it like the rest of your UI.
loading-ui is open source, so the code you install is the code you can inspect, change, and ship. That matters for loading states because they usually need product-specific adjustments: timing, scale, accessibility text, or tighter integration with the rest of your interface.
The project is also meant to improve in public. If you find rough edges, want better docs, or have a loading pattern that feels broadly reusable, open an issue or contribute a fix. Small improvements are valuable here because the library is intentionally focused and every addition affects the overall quality bar.
If you want to get a component into your app quickly, head to Usage. If you are evaluating whether the project matches your design values first, read Philosophy.