# datatables/datatables

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/datatables-datatables).**

7,408 stars · 2,113 forks · CSS · MIT

## Links

- GitHub: https://github.com/DataTables/DataTables
- Homepage: http://www.datatables.net/
- awesome-repositories: https://awesome-repositories.com/repository/datatables-datatables.md

## Description

DataTables is a feature-rich HTML table library that transforms static HTML tables into interactive data grids with sorting, paging, filtering, and server-side processing support. It provides a client-side rendering engine that handles table rows, pagination, and sorting entirely in the browser, while also offering a server-side processing pipeline that offloads sorting, filtering, and paging operations to a backend for efficient handling of large datasets.

The library distinguishes itself through its plugin-based extension system, which allows custom functions and widgets to modify table behavior or rendering, and its CSS framework integration layer that automatically adapts styling to match Bootstrap 3/4/5, Bulma, or other frameworks. It supports inline editing with row injection, responsive layout reflow that adjusts column visibility based on viewport size, and an Ajax data source abstraction for fetching remote data with configurable HTTP methods and parameter mapping.

Additional capabilities include multi-column sorting, text search filtering that narrows rows in real time, dynamic row grouping, table content scrolling, and pagination controls. The library also provides form submission configuration for sending data as JSON or standard HTTP parameters, server-side column filtering, and conditional field validation for dependent form inputs. It offers internationalization for translating UI labels, frontend framework integration for React and Vue, and a custom package builder for selecting only needed components.

The library can be installed via npm, yarn, NuGet, or Composer, and is also available through CDN hosting for fast delivery without local file management.

## Tags

### User Interface & Experience

- [Interactive Table Enhancements](https://awesome-repositories.com/f/user-interface-experience/table-row-management/structural-table-modification/table-content-blocks/html-tables/interactive-table-enhancements.md) — Transforms static HTML tables into interactive data grids with sorting, paging, and filtering. ([source](http://www.datatables.net/examples))
- [Bootstrap Data Grid Styling](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/component-styling-tools/component-styling/theme-style-customizations/bootstrap-extensions/bootstrap-data-grid-styling.md) — Applies Bootstrap 3, 4, or 5 styling to interactive table features like pagination and sorting.
- [HTML Tables](https://awesome-repositories.com/f/user-interface-experience/table-row-management/structural-table-modification/table-content-blocks/html-tables.md) — Converts plain HTML tables into interactive data grids with sorting, paging, and filtering.
- [Table Sorting Logic](https://awesome-repositories.com/f/user-interface-experience/tables/column-reorderers/table-sorting-logic.md) — Orders rows by any column when the user clicks its header with ascending/descending toggles. ([source](http://www.datatables.net/examples/basic_init/zero_configuration.html))
- [Per-Column Sort and Filter State Managers](https://awesome-repositories.com/f/user-interface-experience/tables/column-reorderers/table-sorting-logic/multi-column-sorting/per-column-sort-and-filter-state-managers.md) — Applies multi-column sort orders and per-column filter criteria through internal state management.
- [CSS Framework Integrations](https://awesome-repositories.com/f/user-interface-experience/css-framework-integrations.md) — Automatically adapts styling and layout to match Bootstrap, Bulma, or other CSS frameworks.
- [Bulma Integrations](https://awesome-repositories.com/f/user-interface-experience/css-framework-integrations/bulma-integrations.md) — Applies the Bulma CSS framework's visual styling to interactive table features like sorting, paging, and filtering. ([source](http://www.datatables.net/examples/styling/bulma))
- [Column Visibility Reflow Managers](https://awesome-repositories.com/f/user-interface-experience/full-screen-viewport-layouts/responsive-layout-switches/column-based-responsive-grids/column-visibility-reflow-managers.md) — Adjusts column visibility and table width dynamically based on viewport size.
- [Table Scrolling Controls](https://awesome-repositories.com/f/user-interface-experience/horizontal-scrolling-utilities/editor-horizontal-scrolling/content-scrolling-controls/table-scrolling-controls.md) — Enables vertical and horizontal scrolling within HTML tables for large datasets. ([source](https://cdn.jsdelivr.net/gh/datatables/datatables@master/README.md))
- [Editable Row Injectors](https://awesome-repositories.com/f/user-interface-experience/row-dimension-management/dynamic-row-injection/editable-row-injectors.md) — Inserts editable rows at arbitrary positions within the table by cloning templates and binding form controls.
- [Bootstrap 3 Table Styling](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/component-styling-tools/component-styling/theme-style-customizations/bootstrap-extensions/bootstrap-3-table-styling.md) — Integrates with Bootstrap 3 to apply consistent table styling and pagination controls across the interface. ([source](http://www.datatables.net/examples/styling/bootstrap))
- [CSS Framework Mapping](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/styling-architectures/styling-systems/class-based-styling/css-class-based-styling/css-framework-mapping.md) — Automatically adapts table styling to match Bootstrap 3/4/5, Bulma, and other CSS frameworks.
- [Responsive Layouts](https://awesome-repositories.com/f/user-interface-experience/table-components/responsive-layouts.md) — Automatically reflows table layout to fit mobile, tablet, and desktop viewports. ([source](http://www.datatables.net/))
- [Multi-Column Sorting](https://awesome-repositories.com/f/user-interface-experience/tables/column-reorderers/table-sorting-logic/multi-column-sorting.md) — Orders table rows by one or more columns simultaneously with clickable headers. ([source](http://www.datatables.net/))

### Data & Databases

- [Pagination Controls](https://awesome-repositories.com/f/data-databases/data-table-components/pagination-controls.md) — Ships pagination controls that split large tables into navigable pages. ([source](https://cdn.jsdelivr.net/gh/datatables/datatables@master/README.md))
- [Keyword Row Filtering](https://awesome-repositories.com/f/data-databases/database-schema-mapping/row-mapping-logic/row-record-access/keyword-row-filtering.md) — Filters displayed rows in real time as the user types, hiding non-matching entries. ([source](https://cdn.jsdelivr.net/gh/datatables/datatables@master/README.md))
- [Inline Data Editing](https://awesome-repositories.com/f/data-databases/inline-data-editing.md) — Supports adding, editing, and duplicating table rows directly within the grid interface.
- [In-Page Search Filters](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing/search-and-indexing/content-search-filters/in-page-search-filters.md) — Filters visible rows in real time as the user types a text query. ([source](http://www.datatables.net/))
- [Server-Side Filtering & Sorting](https://awesome-repositories.com/f/data-databases/server-side-filtering-sorting.md) — Offloads search, ordering, and paging to a server for efficient handling of large datasets. ([source](http://www.datatables.net/blog/2025/editor-2.5))
- [Column-Specific Server-Side Filters](https://awesome-repositories.com/f/data-databases/server-side-filtering-sorting/column-specific-server-side-filters.md) — Sends column-specific filter parameters with each data request for server-side matching. ([source](http://www.datatables.net/blog/2025/editor-2.5))
- [Text Search](https://awesome-repositories.com/f/data-databases/text-search.md) — Instantly narrows table rows to those matching a user-typed search term. ([source](http://www.datatables.net/))

### Graphics & Multimedia

- [Client Side Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/dom-web-rendering-strategies/client-side-rendering.md) — Renders table rows, pagination, and sorting entirely in the browser using JavaScript DOM manipulation.

### Software Engineering & Architecture

- [Table Plugin Systems](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/plugin-based-architectures/telemetry-table-plugins/table-plugin-systems.md) — Allows user-defined functions and widgets to modify table behavior or rendering through a plug-in system.
- [Table Behavior Plugin Functions](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/developer-authoring-interfaces/custom-module-implementations/module-functionality-extenders/plugin-extenders/client-functionality-plugins/table-behavior-plugin-functions.md) — Adds bespoke functionality to a data table by writing and integrating custom plug-in functions. ([source](http://www.datatables.net/examples))
- [Hook-Based Plugin Systems](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/hook-based-plugin-systems.md) — Extends core functionality by registering custom functions or widgets that hook into table lifecycle events.

### Web Development

- [Configurable HTTP Data Source Abstractions](https://awesome-repositories.com/f/web-development/mixed-data-source-fetchings/configurable-http-data-source-abstractions.md) — Fetches table data from remote endpoints with configurable HTTP methods and parameter mapping.
- [Frontend Framework Integrations](https://awesome-repositories.com/f/web-development/frontend-framework-integrations.md) — Wraps table functionality as reusable components for use inside React, Vue, or other modern JavaScript frameworks. ([source](http://www.datatables.net/))

### Artificial Intelligence & ML

- [Custom Plugin Development](https://awesome-repositories.com/f/artificial-intelligence-ml/ml-visualization-libraries/custom-plugin-development.md) — Ships a plugin system that allows user-defined functions and widgets to extend table behavior and rendering.

### Part of an Awesome List

- [4 Table Styling](https://awesome-repositories.com/f/awesome-lists/devtools/admin-themes/bootstrap/4-table-styling.md) — Loads Bootstrap 4 CSS and JS to automatically style interactive tables with the Bootstrap 4 design system. ([source](http://www.datatables.net/examples/styling/bootstrap4))
- [5 Table Styling](https://awesome-repositories.com/f/awesome-lists/devtools/admin-themes/bootstrap/5-table-styling.md) — Loads Bootstrap 5 CSS and JS to apply the framework's styling to all table elements automatically. ([source](http://www.datatables.net/examples/styling/bootstrap5))

### Development Tools & Productivity

- [Table Behavior](https://awesome-repositories.com/f/development-tools-productivity/plugin-systems/table-behavior.md) — Adds user-defined functions or widgets that modify how the table behaves or renders. ([source](http://www.datatables.net/examples/index))
