Skip to content

react-querybuilder/react-querybuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

React Query Builder

npm Demo Docs Learn from the maintainer Chat

CI 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'; // or .scss

export function App() {
  const [query, setQuery] = useState({
    combinator: 'and',
    rules: [],
  });

  return <QueryBuilder defaultQuery={query} onQueryChange={setQuery} />;
}

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, use @react-querybuilder/dnd.

For enhanced date/time support, use @react-querybuilder/datetime.

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

Compatibility packages

Ant Design Bootstrap Bulma Chakra UI
Fluent UI Mantine MUI React Native Tremor

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, Fluent UI, Mantine, MUI, and Tremor. A React Native component is also available.

Development

See the contribution guidelines.

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

๐Ÿ’ป
Manuel
Manuel

๐Ÿ“–
Victor Arowo
Victor Arowo

๐Ÿ“–
Ekin Koc
Ekin Koc

๐Ÿ’ป
Zach Blume
Zach Blume

๐Ÿ’ป
็Ž‹ๆ’
็Ž‹ๆ’

๐Ÿ“–
Jan Bednรกล™
Jan Bednรกล™

๐Ÿ’ป โš ๏ธ
Stephen Peery
Stephen Peery

๐Ÿ’ป โš ๏ธ
stil
stil

๐Ÿ’ป โš ๏ธ
Chiawei Ong
Chiawei Ong

๐Ÿ’ป โš ๏ธ
De Lille Felix
De Lille Felix

๐Ÿ’ป โš ๏ธ
Raphaรซl Bideau
Raphaรซl Bideau

๐Ÿ’ป
Dave Anderson
Dave Anderson

๐Ÿ’ป
Roman Ogoreltsev
Roman Ogoreltsev

๐Ÿ’ป โš ๏ธ
Abdullah Ebrahim
Abdullah Ebrahim

๐Ÿ’ป
sajov
sajov

๐Ÿ’ป โš ๏ธ
yywing
yywing

๐Ÿ’ป

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