datatable

by frappe

frappe /datatable

A simple, modern and interactive datatable library for the web

483 Stars 67 Forks Last release: 6 months ago (v1.15.2) MIT License 300 Commits 59 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Frappe DataTable

A modern datatable library for the web

travis build npm version MIT License npm bundle size (minified + gzip) semantic-release

Introduction

Frappe DataTable is a simple, modern and interactive datatable library for displaying tabular data. Originally built for ERPNext, it can be used to render large amount of rows without sacrificing performance and has the basic data grid features like inline editing and keyboard navigation. It does not require jQuery, unlike most data grids out there.

Demo

datatable-demo-2

Features

Cell Features

  • Custom Formatters
  • Inline Editing
  • Mouse Selection
  • Copy Cells
  • Keyboard Navigation
  • Custom Cell Editor

Column Features

  • Reorder Columns
  • Sort by Column
  • Remove / Hide Column
  • Custom Actions
  • Resize Column
  • Flexible Layout

Row Features

  • Row Selection
  • Tree Structured Rows
  • Inline Filters
  • Large Number of Rows
  • Dynamic Row Height

Install

yarn add frappe-datatable
# or
npm install frappe-datatable

Note:

sortablejs
is required to be installed as well.

Usage

const datatable = new DataTable('#datatable', {
  columns: [ 'First Name', 'Last Name', 'Position' ],
  data: [
    [ 'Don', 'Joe', 'Designer' ],
    [ 'Mary', 'Jane', 'Software Developer' ]
  ]
});

Contribution

  • yarn start
    - Start dev server
  • Open
    index.html
    located in the root folder, and start development.
  • Run
    yarn lint
    before committing changes
  • This project uses commitizen for conventional commit messages, use
    yarn commit
    command instead of
    git commit

Read the blog

Making a new datatable for the web

License

MIT

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.