DEV Community

Cover image for React Media Library – Fast, headless asset picker for your React app
David Ang
David Ang

Posted on

React Media Library – Fast, headless asset picker for your React app

With AI editors like #kiro, it finally feels realistic to aim for a faster web. I can spend less time wiring boilerplate and more time making sure the UI is light, accessible, and scores well on Lighthouse.

React Media Library – fast, lightweight, headless library you can drop into any app, with a near-perfect Lighthouse score.

React Media Library will provide you with a focused media flow:

  • Headless provider hooks for assets, selection, and uploads
  • A Tailwind and Mantine presets that works out of the box
  • Drag & drop and file input uploads and hooks for dragging or selecting from the media library.
  • Simple media viewer to maintain the speed and lightweight of the library
  • Swappable icons (Lucide, your own SVGs, or text-only)
  • Basic image editing like cropping, rotation and panning.

Building it with Kiro.dev

Like most of my vibe-coded projects, I’m a visual person, I start by dumping ideas and immediately I want to see them. I opened Kiro and described the idea in plain language: a headless media library that’s rich but lightweight and performance-first.

  • Used vibe coding to get the first MediaLibraryProvider, useMediaLibrary hook, and MediaGrid wired up.
  • Turned that into steering docs: keep the core headless, avoid heavy dependencies, don’t force any icon library, and respect Lighthouse constraints. That gave me confidence that Kiro understood the architecture I wanted and kept the style consistent across the app.
  • Generate specs for current and future features in tiny bits - provider API, grid behavior, upload flow, presets, and reiterate with #kiro.


If you like what I’m building and want to follow along:

Top comments (0)