Supported Data Provider Backends
Thanks to the Data Provider architecture, react-admin supports a lot of API backends. Check the list below for open-source packages developed and maintained by the core team and developers from the react-admin community.
If you can’t find a Data Provider for your backend below, no worries! Writing a Data Provider takes a couple of hours, and won’t prevent you from using react-admin.
- Appwrite LogoAppwrite : marmelab/ra-appwrite
- AWS Amplify LogoAWS Amplify : MrHertal/react-admin-amplify
- blitz LogoBlitz-js : theapexlab/ra-data-blitz
- corebos LogocoreBOS : React-Admin coreBOS Integration
- directus LogoDirectus : marmelab/ra-directus
- django LogoDjango Rest Framework : bmihelac/ra-data-django-rest-framework
- Eicrud LogoEicrud : danyalutsevich/ra-data-eicrud
- eve LogoEve : smeng9/ra-data-eve
- Express Mangoose LogoExpress & Mongoose : NathanAdhitya/express-mongoose-ra-json-server
- Express Sequelize LogoExpress & Sequelize : express-sequelize-crud
- marmelab LogoFakeRest : marmelab/ra-data-fakerest
- feathersjs LogoFeathersjs : josx/ra-data-feathers
- Firebase Firestore LogoFirebase Firestore : benwinding/react-admin-firebase.
- Firebase Realtime LogoFirebase Realtime Database : aymendhaya/ra-data-firebase-client.
- geoserver LogoGeoServer : sergioedo/ra-data-geoserver
- Genezio LogoGenezio : bogdanripa/react-admin-genezio
- sheets LogoGoogle Sheets : marmelab/ra-data-google-sheets
- graphql LogoGraphQL (generic) : marmelab/ra-data-graphql (uses Apollo)
- graphql LogoGraphQL (simple) : marmelab/ra-data-graphql-simple.
- hasura LogoHasura : hasura/ra-data-hasura
- hydra LogoHydra / JSON-LD : api-platform/admin/hydra
- indexedDB LogoIndexedDB (via LocalForage): marmelab/ra-data-local-forage
- indexedDB LogoIndexedDB : tykoth/ra-data-dexie
- jsonApi LogoJSON API : henvo/ra-jsonapi-client
- marmelab LogoJSON server : marmelab/ra-data-json-server
- linuxForHealth LogoLinuxForHealth FHIR : tum-mri-aiim/ra-data-fhir
- localStorage LogoLocalStorage : marmelab/ra-data-local-storage
- localStorage LogoLocalStorage (via LocalForage): marmelab/ra-data-local-forage
- loopback3 LogoLoopback3 : darthwesker/react-admin-loopback
- loopback4 LogoLoopback4 : elmaistrenko/react-admin-lb4
- loopback4 LogoLoopback4 CRUD : loopback4/ra-data-lb4
- mixer LogoMixer : ckoliber/ra-data-mixer
- moleculer LogoMoleculer Microservices : RancaguaInnova/moleculer-data-provider
- nestJs LogoNestJS CRUD : rayman1104/ra-data-nestjsx-crud
- Nestjs-query LogoNestjs-query (GraphQL) : mrnkr/ra-data-nestjs-query
- oData LogoOData : Groopit/ra-data-odata-server
- open LogoOpenCRUD : weakky/ra-data-opencrud
- parse LogoParse : almahdi/ra-data-parse
- postGraphile LogoPostGraphile : bowlingx/ra-postgraphile
- postgRest LogoPostgREST : raphiniert-com/ra-data-postgrest
- prisma LogoPrisma v1 : weakky/ra-data-prisma
- prisma LogoPrisma v2 (GraphQL) : panter/ra-data-prisma
- prisma LogoPrisma v2 (REST) : codeledge/ra-data-simple-prisma
- processMaker LogoProcessMaker3 : ckoliber/ra-data-processmaker3
- restHapi LogoREST-HAPI : ra-data-rest-hapi
- sails LogoSails.js : mpampin/ra-data-json-sails
- sqlite LogoSQLite : marmelab/ra-sqlite-dataprovider
- marmelab LogoREST : marmelab/ra-data-simple-rest
- soul logoSoul /SQLite : DeepBlueCLtd/RA-Soul
- spring LogoSpring Boot : vishpat/ra-data-springboot-rest
- spring LogoSpring Boot (dataProvider + backend) : femrek/ra-spring-data-provider
- strapi LogoStrapi v3/v4 : nazirov91/ra-strapi-rest
- strapi LogoStrapi v4 : garridorafa/ra-strapi-v4-rest
- strapi LogoStrapi v5 : marmelab/ra-strapi
- supabase LogoSupabase : marmelab/ra-supabase
- graphql LogoSupabase (GraphQL) : @groovestack/ra-data-graphql-supabase
- surrealDB LogoSurrealDB : djedi23/ra-surrealdb
- treeql LogoTreeQL / PHP-CRUD-API : nkappler/ra-data-treeql
- wooCommerce LogoWooCommerce REST API : zackha/ra-data-woocommerce
That’s a long list!
If you don’t know where to start, use any of the following:
- marmelab/ra-data-fakerest: Simulates an API based on a JSON object. It doesn’t even require a server.
- marmelab/ra-data-json-server: Similar to the previous one, but requires an API powered by JSONServer.
- marmelab/ra-data-simple-rest: A basic REST adapter that reflects the structure of many APIs
- marmelab/ra-data-local-storage: Persists user editions in local storage. This allows local-first apps, and can be useful in tests.
- marmelab/ra-data-local-forage: Uses a local, offline database based on IndexedDB. Falls back to WebSQL or localStorage.
Tip: Since dataProviders all present the same interface, you can use one dataProvider during early prototyping / development phases, then switch to the dataProvider that fits your production infrastructure.
If you’ve written a Data Provider for another backend, and open-sourced it, please help complete this list with your package.