Skip to content

List.js

A small JavaScript library that adds search, sort, filter and pagination to existing HTML lists and tables.

Stars
11.2k
Forks
877
Licence
MIT
Language
JavaScript
Last update
1.5 years ago
Type
Library

No commits in over a year — check for forks or alternatives before adopting.

What it is

List.js is a JavaScript library that lets a web page search, sort, and filter items in an HTML list, table, or similar element without rebuilding that element from scratch. It is designed to be added to HTML you already have, and the README says it has no dependencies. Developers use it when they want interactive filtering on a page that already displays its data.

  • Add a search box that filters rows of an existing HTML table
  • Sort a list of items by clicking column headers
  • Filter items within a numeric range using the linked examples as a guide
  • Show paginated results of a long list in a web page

Great for

  • Web developers adding search or sorting to an existing HTML table or list
  • Developers who want a small library with no dependencies
  • Projects that need pagination or simple add, edit and remove of list items
  • Sites that must support older browsers, since the README lists IE9+ support

Not ideal for

  • People who need a complete app or no-code tool; this is a code library that requires writing JavaScript
  • Projects needing very large server-side datasets, since the README only says it can handle thousands of items in the browser
  • Teams that need active maintenance guarantees; the README does not describe a support plan and the last push date is 2025-04-27
Step-by-step guide: how to use List.jsInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js or a package manager such as npm, if installing via npm

    Install via NPM

    npm install list.js
  2. 2

    Run it

    • Include list.js in your page with npm or the CDN script tag from the README
    • Mark up an existing list or table in HTML
    • Create a new List instance pointing at that element, following the getting started docs at listjs.com/docs
    • Add a search input and call the search method to filter items
  3. 3

    Get the most out of it

    • Use the fuzzy search example from the README to match approximate text
    • Use the pagination example to split long lists across pages
    • Use the add, get and remove examples to edit items dynamically
    • Read the Options and List API docs at listjs.com for configuration details

Downloads

Strengths

  • The README describes it as simple to apply to existing HTML and having no dependencies
  • It works with plain <div>, <ul>, <table> and similar elements, according to the README
  • It has a long history, with 11,203 stars and an MIT license

Trade-offs

  • It requires writing JavaScript and HTML; there is no visual interface
  • The README is truncated and documentation details live on an external website
  • Version 2.3.1 is the latest release and the README's copyright covers 2011-2020, so the project may move slowly

How it compares

ProjectStarsTypeLevelUpdatedBest for
list.js (this)11.2kLibrarybeginner1.5 years agoWeb developers adding search or sorting to an existing HTML table or list
algorithms25.6kLibrarybeginner1 months agoStudents studying data structures and algorithms
Java66.7kLearning resourcebeginner4 days agoStudents learning algorithms and data structures in Java
C-Plus-Plus34.8kLearning resourceintermediate1 months agoStudents learning algorithms and data structures in C++
Sortable31.2kLibrarybeginner8 months agoWeb developers adding reorderable lists to a site or app
table28.5kLibraryintermediate16 days agoDevelopers building custom data tables in React, Vue, Solid, Svelte or another supported framework

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.