Philosophy
attn/ui - Attention (to detail) is all you need
attn/ui
attn/ui is a small, curated collection of UI components. It exists to explore how careful decisions shape better interfaces.
This is not a catalog. It is a body of work.
Why this exists
Most UI libraries optimize for coverage. attn/ui optimizes for intention.
Components are added only when there is something worth saying — a clearer API, a better interaction, or a more thoughtful default.
If a component does not express a point of view, it does not belong here.
Taste over completeness
attn/ui does not aim to solve every UI problem.
There will be fewer components than expected. Some common primitives may never appear.
Absence is intentional. Restraint is part of the craft.
Authored, not assembled
Every component in attn/ui is treated as authored work.
Patterns may be familiar, but implementations are reconsidered. APIs are shaped deliberately. Motion is tuned, not added by default.
A component is only shipped when it feels inevitable — not just functional.
Motion as communication
Animation exists to explain change.
Motion in attn/ui:
- Clarifies state transitions
- Guides attention
- Reduces cognitive load
If motion can be removed without losing meaning, it does not belong.
Accessibility is the baseline
Accessibility is not a feature here.
Components are:
- Keyboard-first
- Focus-aware
- Predictable in behavior
- Designed to degrade gracefully
If a component is not accessible, it is unfinished.
APIs should disappear
Good APIs do not draw attention to themselves.
attn/ui favors:
- Small, obvious surfaces
- Opinionated defaults
- Customization without ceremony
If using a component requires reading the documentation twice, the API failed.
Ownership matters
attn/ui follows the shadcn distribution model.
You own the code. You can change it. You are responsible for it.
This encourages understanding over abstraction and learning over consumption.
Fewer components, higher standards
attn/ui grows slowly by design.
Shipping cadence is irrelevant. Quality is the metric.
A small set of well-considered components is more valuable than a large set of interchangeable ones.
A living document
attn/ui will evolve as my taste evolves.
Components may be:
- Refined
- Rewritten
- Removed
This is not instability. It is honesty.
An authored collection
attn/ui is a public expression of how I think UI should be built.
Every component is a partial answer.
By Milind Mishra