Does the code for your grid customizations involve more lines than an Apple product launch?
You are not alone, brave developer. We feel your pain – the type that results from banging your head on a keyboard until the room spins – and that is why we have an amazing gift for you! Read on…
Dojo users and SitePen customers alike have needed a grid since the Dojo Toolkit project began. At first, we and several other companies banded together to purchase a non-open source grid. Enter Dojo DataGrid. We contributed our shiny new code to the Dojo Toolkit for the benefit of everyone and we’ve spent years maintaining and incrementally improving it in Dojo. But the web evolved, faster and faster, demanding more functionality, more performance, and more data! Others tried to keep up as well, enter EnhancedGrid and LazyTreeGrid. Kudos to everyone for building and contributing to Dojo!
Finally, last year, we took a long, hard look at how our customers were using DataGrid and EnhancedGrid. We agonized over the time and effort spent developing and maintaining such crucial functionality. We knew something needed to change. Enough was enough! Our choice was to attempt a DataGrid refactor or start over. The SitePen Team spoke: We started over.
To date, we’ve invested thousands of hours in developing the new dgrid, a grid that goes beyond any other, enabling developers to make awesome things faster than ever.
Alpha, Beta, and beyond
The Alpha release of dgrid represented a baseline which gave a fair indication of its design direction, as well as the types of features it intended to support. While some modules were in an unfinished or rough state, it was possible to demonstrate and harness their abilities, and we were thrilled to hear from several early adopters who shared some early success stories and feedback.
This Beta release represents the culmination of months of work by the SitePen team to fix bugs and work toward a stable API release. While many companies and individuals have already successfully used alpha versions of dgrid in their production applications, dgrid beta represents the first release of dgrid we know to be feature-complete and API-stable for regular use.
Beyond Beta, we’re on the path to greatness, most notably finishing work on keyboard accessibility and improving mobile compatibility. Mobile compatibility, in particular, will be a continued focus for development as the mobile landscape continues to evolve.
Usability, Portability, Compatibility
We’ve designed dgrid with your needs in mind. First of all, because dgrid is a completely portable AMD package, any application written with AMD can use dgrid—even if the rest of the application isn’t using Dojo!
As for compatibility, we’re currently targeting the following desktop browsers:
- Firefox ESR and latest release (currently 10 and 11, respectively)
- Chrome stable (currently 17)
- Internet Explorer 6-9
- Safari 5.1
- Opera 11.61
And the following mobile platforms…
- iOS 4.3 and 5
- Android 2.3 and 4.0
dgrid’s Modular Features
dgrid’s extremely modular design helps to ensure that core functionality can be easily modified and that extremely small, lightweight grids can be created with minimal effort. Whereas grid modules like DojoX DataGrid are at least 55KB in compressed size, dgrid starts at just 12KB! Additionally, dgrid includes a huge number of modular features out-of-the-box, rivaling or exceeding nearly every other grid component currently available:
- Keyboard navigation & ARIA role support for accessibility
- i18n support
- Asynchronous data retrieval & row rendering
- Row & column drag’n’drop
- jQuery ThemeRoller theme support
- Native dojo/store API support
- Automatic updates with Observable stores
- Inline cell editors, including support for Dijit form widgets as editors
- Unlimited-depth tree support
- Support for multiple independent column sets
- Support for records rendered to multiple rows
- Support for custom formatting functions for cell contents
- A complete row selection engine, including multi-row and indirect (checkbox-based) selection
- Licensed using the same CLA & open-source licensing as the Dojo Toolkit
- ColumnHider: Shows and hides columns via a simple menu (Beta Feature!)
- ColumnReorder: Reorders columns in simple layouts using drag’n’drop (Beta Feature!)
- DijitRegistry: Enables integration with the Dijit registry and other Dijit layout widgets (Beta Feature!)
- Virtual & traditional paging options
- Pagination: A UI component that changes the behavior of the grid to with discrete pages rather than virtual scrolling (Beta Feature!)
dgrid, Where have you been all my life?
We really wanted to make sure you didn’t miss out on this extraordinary opportunity to simplify and improve your ongoing development efforts and application performance. We knew we need to illustrate how dgrid can be used to create amazing experiences with a minimum amount of effort and convince you that this was the way to go! So, here’s what we did:
First, we documented the heck out of our code and put in on Github. THEN, we wrote some tests and demos and THEN we created some handy tutorials AND THEN, we gathered everything up, organized it to the nines and put it right here:
Development & Support – We’ve got your back
Wow! Thanks for reading this far! You must be seriously over your current grid fiasco!
We’re working hard with our customers to replace their massive grid implementations with dgrid and we can do the same for your application! Call us today to get on the schedule to receive a full grid migration effort or sign up for one of our valuable SitePen Support plans to keep your developers productive and informed!