A headless React meta-framework for building CRUD-heavy admin panels, dashboards, and internal tools.
marmelab/react-admin
A React framework for building admin dashboards and back-office single-page apps on top of REST or GraphQL APIs, using Material UI.
Open-source alternative to:Retool
Airtable Interface
- Stars
- 26,968
- Forks
- 5,471
- Open issues
- 65
- Last commit
- 2 days ago
What is it?
react-admin is a frontend framework for building admin interfaces and other data-driven single-page applications that run in the browser. You connect it to an API through a data provider, and it supplies CRUD pages, data grids, forms, search and filters, authentication, routing and permissions built on Material UI.
The framework is designed as a set of loosely coupled React components and hooks, so any part can be replaced with your own component. The README lists more than 45 data provider adapters for REST and GraphQL backends, and provides a declarative <Resource> component that maps an API endpoint to list, edit and create pages.
The project is written in TypeScript, though JavaScript is also supported. It is built on Material UI, react-hook-form, react-router and react-query, and ships with example applications including an e-commerce demo, a CRM and a simple blog.
Key features
- 01Connects to REST or GraphQL APIs through more than 45 data provider adapters
- 02Provides CRUD pages, data grids, forms with validation, and search and filter
- 03Includes authentication, roles and permissions, routing, i18n and notifications
- 04Built on Material UI and every component can be replaced with a custom one
- 05Supports both TypeScript and JavaScript
Use cases
- Building an internal admin panel for managing data behind an existing REST API
- Creating a CRM or e-commerce back office with lists, edit forms and permissions
- Adding a management UI on top of a GraphQL backend
Quick start
- 1
Install react-admin from npm
npm install react-admin - 2
Or install with yarn
yarn add react-admin
Things to know
- Requires a backend API (REST, GraphQL, or a data provider adapter) to supply data.
Topics
FAQ
- What is react-admin?
- A React framework for building admin dashboards and back-office single-page apps on top of REST or GraphQL APIs, using Material UI. react-admin is a frontend framework for building admin interfaces and other data-driven single-page applications that run in the browser. You connect it to an API through a data provider, and it supplies CRUD pages, data grids, forms, search and filters, authentication, routing and permissions built on Material UI.
- Is react-admin free to use? What license does it have?
- react-admin is open source under the MIT license. Check the license terms before using it in commercial products.
- Is react-admin still maintained?
- Actively maintained. The last commit to react-admin was on Oct 19, 2026.
- What can I use react-admin for?
- Building an internal admin panel for managing data behind an existing REST API Creating a CRM or e-commerce back office with lists, edit forms and permissions Adding a management UI on top of a GraphQL backend
- How do I install react-admin?
- Install react-admin from npm: npm install react-admin Or install with yarn: yarn add react-admin
- Where can I get react-admin?
- The source code and installation instructions are on GitHub: https://github.com/marmelab/react-admin
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A GraphQL client for TypeScript and JavaScript with normalized caching, React hooks, and framework support for Vue, Angular and Svelte.
Open-source, self-hosted headless CMS in TypeScript that generates REST and GraphQL content APIs from your content models.
An open-source CRM you can extend as code, with objects, views, workflows and AI agents, built on TypeScript, React and PostgreSQL.
Open-source low-code platform for building admin panels, internal tools and dashboards, connecting to 25+ databases and any API.
RedwoodJS's GraphQL package, the optional GraphQL API layer of the Redwood full-stack React framework, built on GraphQL Yoga and Envelop.