Vulkan Hardware Database Quick Filters

Rethinking filtering

Filtering data is one of the most important parts of any database, and the Vulkan hardware database is no exception. Back in April 2025, I added global filters. These let you enable global pre-filters. While that worked, it was not very intuitive. The settings were somewhat hidden away on a separate page, and once enabled, those pre-filters were implicitly applied to all views that supported filtering. That made it cumbersome, or almost impossible, to adjust filters quickly. You had to open the settings page again, change the filters, and then navigate back to the view where you wanted to use them. So while they did their job, they were not very user-friendly.

A while ago, I reworked the extension listing page to improve performance and added two quick filters to that listing: one for data age, such as showing only recent data, and one for API versions.

I already mentioned back then that I was planning to add more quick filters, and that is what I have been working on over the last few weeks. I have now removed the old, cumbersome global filters and replaced them with easy-to-access in-place quick filters:

These have been added to all views in the database, making it much easier to filter data the way you need. Because they are part of each view, you can also have different filters active in different places. Listings opened from a view inherit those filters as well. Most views default to recent data, except for the report and device listings.

This also includes the global format support listings for linear images, optimal tiled images, and buffers, which previously had no way to be filtered at a global level. In addition to the filters, I also added columns for the recently introduced new feature flags:

If you encounter any issues with these new filters, feel free to open an issue.

House-keeping

Aside from this prominent feature, I have also been doing a lot of housekeeping. Most of this is the kind of work users will hopefully not notice, such as improving performance and making things more robust.

One area I have been spending more and more time on is security. This is becoming increasingly important in the age of AI-assisted security attacks, something I have been seeing first-hand. Especially the API routes that are also used by the database itself have received several security improvements.