All Projects → datazenit → Sensei Grid

datazenit / Sensei Grid

Licence: mit
Simple and lightweight data grid in JS/HTML

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Sensei Grid

Angular Slickgrid
Angular-Slickgrid is a wrapper of the lightning fast & customizable SlickGrid datagrid, it also includes multiple Styling Themes
Stars: ✭ 298 (-63.12%)
Mutual labels:  grid, datagrid, data-table
Datatablesbundle
This Bundle integrates the jQuery DataTables plugin into your Symfony application.
Stars: ✭ 334 (-58.66%)
Mutual labels:  grid, datagrid, data-table
Aurelia Slickgrid
Aurelia-Slickgrid a wrapper of the lightning fast & customizable SlickGrid datagrid with a few Styling Themes
Stars: ✭ 100 (-87.62%)
Mutual labels:  data, grid, datagrid
Reactgrid
Add spreadsheet-like behavior to your React app
Stars: ✭ 289 (-64.23%)
Mutual labels:  datagrid, data-table
Gulp Template
Render/precompile Lodash templates
Stars: ✭ 276 (-65.84%)
Mutual labels:  lodash, underscore
eslint-plugin-lodash-template
ESLint plugin for John Resig-style micro template, Lodash's template, Underscore's template and EJS.
Stars: ✭ 15 (-98.14%)
Mutual labels:  lodash, underscore
BlazorGrid
A simple, light weight data grid component for Blazor, focused on displaying remote data. Supports sorting and row highlighting, dynamic column changes and custom cell markup.
Stars: ✭ 61 (-92.45%)
Mutual labels:  grid, datagrid
Cheetah Grid
The fastest open-source data table for web.
Stars: ✭ 417 (-48.39%)
Mutual labels:  grid, data-table
Nspl
Non-Standard PHP Library - functional primitives toolbox and more
Stars: ✭ 365 (-54.83%)
Mutual labels:  lodash, underscore
Gijgo
Gijgo - Free Javascript Controls
Stars: ✭ 424 (-47.52%)
Mutual labels:  grid, datagrid
Apydatagridbundle
Symfony Datagrid Bundle
Stars: ✭ 452 (-44.06%)
Mutual labels:  grid, datagrid
underscore.haz
🔍 _.haz() is like _.has() but this underscore and/or lodash mixin lets you do deep object key existence checking with a dot denoted string, for example 'a.b.c'
Stars: ✭ 13 (-98.39%)
Mutual labels:  lodash, underscore
blazor-ui
A collection of examples related to Telerik UI for Blazor Components: https://www.telerik.com/blazor-ui
Stars: ✭ 182 (-77.48%)
Mutual labels:  grid, datagrid
Nghandsontable
Official AngularJS directive for Handsontable
Stars: ✭ 438 (-45.79%)
Mutual labels:  grid, data-table
Ngx Datatable
✨ A feature-rich yet lightweight data-table crafted for Angular
Stars: ✭ 4,415 (+446.41%)
Mutual labels:  grid, datagrid
Tabulator
Interactive Tables and Data Grids for JavaScript
Stars: ✭ 4,329 (+435.77%)
Mutual labels:  data, grid
Sheetjs
📗 SheetJS Community Edition -- Spreadsheet Data Toolkit
Stars: ✭ 28,479 (+3424.63%)
Mutual labels:  data, grid
rudash
Rudash - Lodash for Ruby Apps
Stars: ✭ 27 (-96.66%)
Mutual labels:  lodash, underscore
underwater
~2kb - ES6 Collection of helper functions. Lodash like
Stars: ✭ 18 (-97.77%)
Mutual labels:  lodash, underscore
Lodash Id
Makes it easy to manipulate id-based resources with lodash or lowdb
Stars: ✭ 434 (-46.29%)
Mutual labels:  lodash, underscore

Sensei Grid Build Status

Simple data grid library written in JavaScript. The data grid is part of Datazenit, a web-based database administration tool.

Dependencies: jQuery and underscore.js/lodash. The example in this repository also uses Twitter Bootstrap for default styles.

Demo and Screenshot

Demo: http://datazenit.com/static/sensei-grid/examples/index.html

Sensei Grid Screenshot

Goals

  • Simplicity: Sensei Grid will be a single purpose data grid without unrelated functionality.
  • Small code base: Bloatware and dirty workarounds/hacks will be avoided as much as possible to keep the code base small and tidy.
  • Extensibility: Even though Sensei Grid will be kept simple, we will put serious effort to make it easy to extend and customize.
  • Stability: Sensei Grid is backed by Datazenit, meaning that the project is financially supported and will be constantly maintained and improved.

Installation

The simplest way to get all necessary files is via bower: bower install sensei-grid. If you don't want to use bower, just download an archive from the latest release page or clone the whole repository.

When you have obtained a copy of Sensei Grid, you must include all dependecies, sensei-grid.js and sensei-grid.css. Sensei Grid depends on jQuery and lodash/underscore.js. For your convenience all dependecies can be found in lib/ folder.

Warning: By default Sensei Grid does not apply any styles to the table. It means that you need to create your own stylesheet or you can just use bootstrap.css as shown in the example below.

<link rel="stylesheet" type="text/css" href="dist/css/sensei-grid.css"/>
<link rel="stylesheet" type="text/css" href="lib/bootstrap/dist/css/bootstrap.min.css"/>

<script src="lib/jquery/dist/jquery.min.js"></script>
<script src="lib/lodash/lodash.min.js"></script>
<script src="dist/sensei-grid.js"></script>

Basic Usage

Define your data array. Each row is represented by an object.

var data = [
    {id: 1, title: "test"},
    {id: 2, title: "foo bar"}
];

Currently it is mandatory to define columns in a separate array for Sensei Grid to work

var columns = [
    {name: "id", type: "string"},
    {name: "title", type: "string"}
];

Initialize grid with data and columns

var grid = $(".example").grid(data, columns);

Register at least one editor (BasicEditor is bundled with Sensei Grid)

grid.registerEditor(BasicEditor);

Render data grid in .example container.

grid.render();

Bundled editors

By default Sensei Grid is bundled with several grid editors that can be registered for a data grid.

List of available editors:

  • BasicEditor - simple text field to edit basic data
  • BooleanEditor - checkbox editor for boolean values (true/false)
  • TextareaEditor - large text field for editing large text
  • SelectEditor - dropdown select box to choose a value from a list
  • DateEditor - datetime editor to choose a specific date from a calendar, provided by pickadate.js
  • DisabledEditor - sample editor that can't be edited
  • [new] AutocompleteEditor - text field with autocomplete support, based on typeahead.js

Blog posts

Roadmap

Planned for the upcoming releases:

  • Delete/duplicate row keyboard shortcut
  • New row support
  • Event callbacks (e.g., save, load, render)
  • Field types (e.g., string, int, float)
  • Optional column definition (if the structure of data is simple, assume default column settings)
  • Firefox compatibility issues
  • More configuration parameters for grid
  • Example editor for specific field types (an example select box editor can be found in examples/example.js)
  • Touch support for mobile devices
  • Column sorting callbacks
  • Column resizing (to be discussed)
  • Implement undo/redo (to be discussed)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].