GithubHelp home page GithubHelp logo

yhown589 / simple-datatables Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fiduswriter/simple-datatables

0.0 0.0 0.0 2.86 MB

DataTables but in TypeScript transpiled to Vanilla JS

License: Other

JavaScript 9.64% TypeScript 82.01% CSS 4.61% HTML 3.73%

simple-datatables's Introduction

simple-datatables

A lightweight, extendable, JavaScript HTML table library written in TypeScript and transpilled to Vanilla JavaScript. Similar to jQuery DataTables for use in modern browsers, but without the jQuery dependency.

Examples / Demos

See the demos here and the documentation here.

Upgrading

For upgrading from one major version to another, check the upgrade guide: https://fiduswriter.github.io/simple-datatables/documentation/Upgrading

Note: The upgrade from version 5 version 6 is the most complicated upgrade so far. Please read through the instructions before filing complaints. If you run simple-datatables from a CDN, make sure that you have fixed it to a specific major or minor version so that you do not accidentally upload to a new version that requires you to do lots of manual adjustments.

CDN

To use the CDN version of simple-datatables use either https://cdn.jsdelivr.net/npm/simple-datatables@latest or https://unpkg.com/simple-datatables. You also need to add the CSS styling, so the elements you'll add to html head element can for example be these:

Note: For production websites, specify a specific major version. For example https://cdn.jsdelivr.net/npm/simple-datatables@6 for the latest version in the 6.x.x series or https://cdn.jsdelivr.net/npm/[email protected] for the latest version in the 6.0.x series.

<link href="https://cdn.jsdelivr.net/npm/simple-datatables@latest/dist/style.css" rel="stylesheet" type="text/css">
<script src="https://cdn.jsdelivr.net/npm/simple-datatables@latest" type="text/javascript"></script>

License

LGPL

Features

  • Sortable/filterable columns
  • Pagination
  • Searchable
  • Customisable layout
  • Customisable labels
  • Customise column rendering
  • Export to common formats like csv, txt, json, and sql
  • Import csv and json data
  • Control column visibility
  • Reorder or swap columns
  • dayjs integration for sorting columns with datetime strings
  • Using diffDOM for faster DOM updates.

simple-datatables Documentation

History

This project started as a fork of Vanilla-DataTables, but it has since been converted to TypeScript.

If you want a version that works in very old browsers (IE, etc.), then head over to https://github.com/fiduswriter/simple-datatables-classic .


Install

npm

npm install simple-datatables --save

Yarn

yarn add simple-datatables

Quick Start

Then just initialise the plugin by import DataTable and either passing a reference to the table or a CSS3 selector string as the first parameter:

import {DataTable} from "simple-datatables"

const myTable = document.querySelector("#myTable");
const dataTable = new DataTable(myTable);

// or

const dataTable = new DataTable("#myTable");

You can also pass the options object as the second parameter:

import {DataTable} from "simple-datatables"

const dataTable = new DataTable("#myTable", {
	searchable: false,
	fixedHeight: true,
	...
})

If using the CDN:

const dataTable = new simpleDatatables.DataTable("#myTable", {
	searchable: false,
	fixedHeight: true,
	...
})

How to contribute?

  1. Fork the repository
  2. Create a sub-branch
  3. Clone the sub-branch to your local system
  4. Install NodeJS
  5. Open the project in a code editor (for example Visual Studio Code or Pulsar Edit)
  6. Open the Terminal
  7. Run npm install in the Terminal
  8. Start making changes and contributing to the project ๐Ÿ™‚
  9. You can run npm run test_server to test your code. This runs on port 3000 (http://localhost:3000/)
  10. You can also run npm run build in the Terminal to build the final files
  11. Once finished, then commit/push your code and create a Pull Request on GitHub for the changes

simple-datatables's People

Contributors

johanneswilm avatar mobius1 avatar deakjahn avatar sandrohc avatar ellinge avatar shaunroselt avatar cesar-1e avatar jmsche avatar hydrocat avatar markgarrigan avatar oneezy avatar dcriado avatar sudwebdesign avatar samrzhevsky avatar kczx3 avatar wabudd1 avatar usouf avatar krellistech avatar ry4nolson avatar vash15 avatar ilicmarko avatar jonathanriche avatar gerwinbosch avatar y3k avatar dpilafian avatar shynekomaid avatar notshi avatar petermanders89 avatar jordano159 avatar huyz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.