{"repo":"agoodway/livefilter","free":true,"listed":false,"github":"https://github.com/agoodway/livefilter","clone":"git clone https://github.com/agoodway/livefilter.git","description":"A flexible and composable filtering library for LiveView using PgRest","language":"Elixir","stars":26,"topics":["liveview","admin-dashboard","elixir"],"license":"MIT","category":"dashboards-admin","readme_excerpt":"LiveFilter Composable, URL-driven filtering for Phoenix LiveView with Linear/Notion-style UI filters and PostgREST-compatible parameters for shareable filter states using PgRest. Demo App See demo/ for an interactive filter explorer built with Phoenix LiveView. The repo ships a Hivemind wrapper that serves the demo at localhost:4032 : Requires a local Postgres reachable at localhost:5432 with a demo dev database ( mix ecto.setup from demo/ creates it). Or run the demo directly: Prerequisites - Elixir 1.15+ - Phoenix LiveView 1.0+ - DaisyUI (via daisy ui components) Installation Add livefilter to your dependencies in mix.exs : Then fetch dependencies: JavaScript Hooks LiveFilter requires JavaScript hooks for dropdown behavior. Add them to your LiveSocket: For esbuild, add the deps path to your NODE PATH in config/config.exs : Quick Start 1. Define Filter Configuration 2. Initialize in LiveView 3. Render the Filter Bar (Optional) Use the built-in UI component: Or build your own UI — the param/query layers work independently: 4. Apply Filters to Queries Filter Types Type Function Default Operators -------------- ------------------------------ ------------------------------ Text LiveFilter.text/2 ilike, eq, neq, like Number LiveFilter.number/2 eq, neq, gt, gte, lt, lte Select LiveFilter.select/2 eq, neq Multi-select LiveFilter.multi select/2 ov, cs Date LiveFilter.date/2 eq, gt, gte, lt, lte Date Range LiveFilter.date range/2 gte lte DateTime LiveFilter.datetime/2 eq, gt, gte, lt","default_branch":null,"files":null,"tree":[],"storefront":"/r/agoodway","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/agoodway/livefilter/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}