finds.dev← search

// the find

marmelab/react-admin

★ 26,771 · TypeScript · MIT · updated Jun 2026

A frontend Framework for single-page applications on top of REST/GraphQL APIs, using TypeScript, React and Material Design

react-admin is a mature, opinionated framework for building CRUD admin interfaces on top of REST or GraphQL APIs. It's built on MUI, react-hook-form, react-router, and TanStack Query, and handles the entire lifecycle from data fetching to forms, filtering, permissions, and i18n. Best fit for internal tools, dashboards, and back-office apps where you control the API shape.

- Data provider abstraction is genuinely well-designed: swapping backends is a matter of swapping one object, and there are 45+ community-maintained adapters for common APIs (Supabase, Firebase, Django REST, etc.).

- Component library coverage is deep—ReferenceInput with autocomplete, editable datagrids, TabbedForms, wizard forms, optimistic updates with undo, realtime support, and RBAC are all built-in rather than left as exercises for the user.

- The hooks-and-controllers architecture (useListController, useEditController, etc.) lets you replace any visual layer while keeping all the data/state logic, so escaping MUI defaults is possible without rewriting everything.

- Documentation is unusually thorough: every component has a dedicated docs page with props table, code examples, and often a live sandbox. The upgrade guide and changelog are maintained consistently across major versions.

- MUI coupling is deep despite claims of replaceability. Swapping to Tailwind or another design system requires fighting internal sx props, theme tokens, and MUI-specific component APIs throughout—it's technically possible but not a casual afternoon's work.

- The enterprise edition gates a significant chunk of genuinely useful features (AG Grid integration, calendar, tree inputs, audit log, realtime, RBAC helpers) behind a paid subscription, which is fine but makes the free tier feel incomplete for non-trivial apps.

- Bundle size is substantial. A minimal setup pulls in the full MUI library, react-router, TanStack Query, react-hook-form, and ra-core—cold load performance on slow connections can be noticeably bad without aggressive code splitting.

- The opinionated URL and state structure (list params in the URL, record context via React context) creates friction when embedding react-admin views inside an existing app that has its own routing or state management conventions.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →