Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback

React Query Builder

npm Demo Docs Learn from the maintainer

Continuous Integration codecov.io All Contributors

React Query Builder is a fully customizable query builder component for React, along with a collection of utility functions for importing from, and exporting to, various query languages like SQL, MongoDB, and more. Demo is here.

Complete documentation is available at react-querybuilder.js.org.

Screenshot

Getting started

To get started, import the main component and the default stylesheet, then render the component in your app:

import { QueryBuilder } from 'react-querybuilder';
import 'react-querybuilder/dist/query-builder.css';

export const App = () => {
  return <QueryBuilder />;
};

For a more complete introduction, see the main package README, dive into the full documentation, or browse the example projects.

To enable drag-and-drop functionality, see the @react-querybuilder/dnd package README.

For instructions on migrating from earlier versions of react-querybuilder, click here.

Compatibility packages

Ant Design Bootstrap Bulma Chakra MUI

In addition to the main react-querybuilder package, this repo also hosts official compatibility component packages for use with several popular style libraries including Ant Design, Bootstrap, Bulma, Chakra UI, and MUI.

Development

To run a test page with a basic query builder using the default components, run yarn start.

To run the documentation website, run yarn website:start. Click “Demo” in the page header to load the full demo with all options and compatibility components available.

Credits

This component was inspired by prior work from:

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Jake Boone
Jake Boone

💻 📖 🚧 ⚠️
Pavan Podila
Pavan Podila

💻 📖 ⚠️
Andrew Turgeon
Andrew Turgeon

💻 ⚠️
André Drougge
André Drougge

💻 ⚠️
Oumar Sharif DAMBABA
Oumar Sharif DAMBABA

💻
Arte Ebrahimi
Arte Ebrahimi

💻 📖 ⚠️
Carlos Azuaje
Carlos Azuaje

💻
Srinivas Damam
Srinivas Damam

💻
Matthew Reishus
Matthew Reishus

📖
Anish Duwal
Anish Duwal

💻 ⚠️
RomanLamsal1337
RomanLamsal1337

💻
Dmitriy Kolesnikov
Dmitriy Kolesnikov

💻
Vitor Barbosa
Vitor Barbosa

💻
Laxminarayana
Laxminarayana

💻 📖
Christian Mund
Christian Mund

💻 📖
Dallas Larsen
Dallas Larsen

💻
Ayush Srivastava
Ayush Srivastava

📖
Fabio Espinosa
Fabio Espinosa

💻 📖 ⚠️
Anatoly Bubenkov
Anatoly Bubenkov

💻 📖 ⚠️
Saurabh Nemade
Saurabh Nemade

💻 ⚠️
Edwin Xavier
Edwin Xavier

💻 📖
Code Monk
Code Monk

💻 📖 ⚠️
ZigZagT
ZigZagT

💻
mylawacad
mylawacad

💻
Kyrylo Stepanchuk
Kyrylo Stepanchuk

💻
Kasey Culmback
Kasey Culmback

💻
Ahmed Fasih
Ahmed Fasih

💻
Austin Stowe
Austin Stowe

💻

This project follows the all-contributors specification. Contributions of any kind welcome!