A customizable Vaadin Flow component for filtering Grids.
- Customizable and dynamic filter UI
- Most common filters, operations and value types are supported out of the box
- Nested filters (AND, OR, NOT)
- depth can be limited
- customizable operations (=,>,<,contains,is empty)
- support for multiple value types
- can easily be bound with Vaadin components
- Query parameter support
- Support for custom translations
Note
If you are looking for a simpler component you may check out our simple-grid-filter.
Here is a very simple example how the GridFilter can be used:
Grid<Person> grid = createGrid();
GridFilter<Person> filter = GridFilter.createDefault(grid)
.withFilterableField("ID", Person::id, Integer.class)
.withFilterableField("First Name", Person::firstName, String.class);
this.add(filter, grid);
To get started further it's recommended to have a look at the demo.
A description how to get it running can be found below.
Important
This component is designed for "in memory" filtering of small to medium sized amounts of data.
Note
Filtering multiple thousand items with complex filtering conditions can drastically impact performance and make the UI unresponsive!
In these cases it's recommended to use backend filtering solutions like database queries or search engines like ElasticSearch in combination with a customized UI search framework. If you need help in implementing these feel free to contact us.
Installation guide for the latest release
Vaadin version | Grid-Filter version |
---|---|
Vaadin 24+ (latest) | 1+ |
- Checkout the repo
- Run
mvn install && mvn -f vaadin-grid-filter-demo spring-boot:run
- Open http://localhost:8080
If you need support as soon as possible and you can't wait for any pull request, feel free to use our support.
See the contributing guide for detailed instructions on how to get started with our project.
View the license of the current project or the summary including all dependencies