Every list page in Ceum — clients, projects, tasks, invoices, transactions, subscriptions, time entries, documents — shares the same filtering and sorting. This article describes that shared behavior so each entity article can point here instead of repeating it.
Filter types
A column can offer any of these filter types:
- Text — matches anywhere in the value, ignoring case and surrounding spaces.
- Multi-select — a checkbox list of set options (such as status, type, or priority). A row matches if it has any of the chosen options.
- Tag — a free-form tag picker with autocomplete from your tag library. Same "any of" matching as multi-select.
- Date range — a start and end picker. Both ends are included.
- Number range — a minimum and maximum. Both ends are included.
When several columns have active filters, they combine with and — a row has to satisfy every active filter to appear.
Filter chips
Active filters show as a row of removable chips above the table. Each chip is a single condition — a column, how it compares, and the value — so a multi-value pick on one column appears as one chip per value. Removing a chip drops just that one condition and leaves the rest in place; the matching rule is unchanged (several values on the same column match any of them, while chips on different columns all have to match).
Shareable views
Your current filters and sort are captured in the page address. Two things follow from that:
- Shareable. Copy the address and a colleague with access sees the same view.
- Not saved automatically. Closing the tab loses the filter unless you've bookmarked the address.
Your browser's back and forward buttons step through your filter changes, since each one updates the address.
Sort
Sortable columns show an arrow in the header when active. Click to switch between ascending and descending. The current sort is captured in the address too, so it's shareable and survives back and forward.
You can sort by one column at a time — there's no multi-column sort.
Column visibility
Some columns are hidden by default on narrow screens (tablet or phone) and reappear on wider ones. You can also choose which columns each table shows from the Settings button in the page header — those choices are saved per table and per user. See Customizing table columns.
Reset
Lists show a Clear filters action whenever at least one filter is active. Clearing resets every filter and sort to its default.
Saved filter presets
Saved presets aren't supported yet. Filters are ad-hoc per view; the practical workaround is to bookmark a filtered page.
Tips and edge cases
- The tag filter is "any of" within the column, "and" across columns. Picking tags
euandvatshows rows with either; adding a client filter narrows to rows that match both. - Date ranges are inclusive. A
2026-01-01 → 2026-01-31filter includes both endpoints. - Filters survive paging. Moving between pages keeps your filters; opening a row and returning with the back button restores them too.
On mobile
Mobile lists filter through a native filter sheet opened from a filter button (it shows a badge with how many filters are active). It supports the same core filter kinds — text/search, multi-select, tag, date range, number range, duration range, and tri-state booleans — with a simpler, touch-first layout and no shareable-URL or chip row. The "any of within a column, and across columns" matching is the same.