Tons of progress has happened with liteGrid since my last in-depth post.  At this point, I think I’ve met all the goals I defined, and I’m very happy with it, in terms of both functionality and design.  Here’s what the current set of modules provides (remember all of this is mix-and-match, so you can tailor it to what you need):

  • AJAX-based data provider supporting retrieval, updates (both multi-row batch and single-cell modes), updates, and inserts, with full support for retrieving and rebinding database-populated values post insert/update (more on this in a future post)
  • Batch saving module that allows users to persist their changes on-demand
  • BlockUI integration, nicely disabling access to the grid during data operations
  • Cell saving module that automatically saves changes whenever a cell is edited
  • Formatting module that allows you to specify anything from simple to advanced formatting rules
  • Editable via integration with JEditable
  • Layout manager that adds resizable columns, fixed header row, and more
  • Integration with jQuery UI
  • Row addition module that does exactly what it sounds like
  • Row deletion module that adds a delete button to all rows
  • (Thanks to David Koehler) Injection protection through escaping potentially dangerous characters, and unescaping them prior to edit
  • Dynamic row striping that maintains the correct striping even as the grid changes
  • Toolbar that supports custom buttons
  • Tree-grid functionality, allowing rows to be nested under other rows

All of this functionality is implemented using liteGrid’s event-driven architecture, so there is little/no coupling between the core and the various modules. 

Like I said a while back, all this is Coming Soon to an open-source repository near you.  My plan is to make that happen within the next week.  I don’t plan to make a release right away, but the code will be there for anyone that wants to take a look. 

Roadmap to V1.0

Here are the list of things I want to do before I’ll be comfortable calling this a true “release”:

  • Unit tests (probably using JSUnit)
  • Better documentation; the code is well-commented, but I’d like to add vs-doc support as well as have a rich wiki that describes everything
  • Complete demo application (including ASP.NET MVC backend)
  • Resolve any lingering Internet Explorer 8 rendering issues

If you are interested in contributing, drop me a line, and I’ll let you know as soon as the source is available for you to check out.  Or, stay tuned to this blog, and watch for a link to the project within the next week (hopefully).