The Project (soon to be) Formerly Known as ng-grid

I’ve go a bunch of small updates to share (and one big one.) I’m starting with this one since it fits with the Angular kick I’ve been on.

I’ve recently gotten involved with the ng-grid project housed under the Angular UI banner. We’re using it at work, so it makes sense for me to pitch in to help keep the project humming along as best it can.

We had a meeting last week and hatched plans to rewrite the core of the project in order to juice performance and ease development going forward. Working in financial services, grids are a big deal for me and I’ve never been a huge fan of any of the ones out there. I’m hoping this project will end up being the quality grid I’ve always been looking for as a consumer.

On the name

While it’s called ng-grid at the moment, it’s going to get a name change for 3.0, in order to better fit with the rest of the Angular UI stable. I’m not 100% sure of this, since we haven’t followed up since the meeting, but it will likely be UI Grid.


So, yeah. If you’re an Angular type and are looking for a data grid, I’ve got your back.

15 thoughts on “The Project (soon to be) Formerly Known as ng-grid

  1. I love ng-grid, used it heavily on my last project – glad to see performance is being optimized for the next version. What do you guys need help with the most?

  2. We’re still in he planning stages. The original guys on the project are trying to carve out some time to look at how the new core will be architected. Once that’s sorted out we’ll start to look at what needs to happen in terms of specifics.

    Keep your eye on the repo, there’s definitely some room to start to look at what the community is interested in in terms of features.

  3. The grid just worked right out of the box, and being able to write customized templates has solved almost all my customization problems.

    One problem that is stumping me is the ability to open a child grid for certain rows that may have children sort of like the group by but not every row.

    Is the 3.0 stable enough to use?

    Thank you,
    Stephen

  4. It’s not. Although it is functional. That subgrid type use case is something we’re looking at, where you can have a lightweight instance of the grid, if that’s all you need.

  5. Hi there, any news or release date of v.3 ?
    I’m hoping to be able to try it soon. Thanks for your efforts!

  6. Currently using v2.8 and can’t wait for the 3.0 release. Great job with ng grid and hope the new one works even better.

  7. Hi Rob

    Been using ng-grid for a few months now and think it’s great.

    I’d like to get involved as a developer for the project to help keep it moving forward and make it even better!

    My question: what’s the best way to come ‘on-board’ as a developer and get working on it.

    jeff

  8. I have noticed quite a few people looking for an event which says that a grid has been fully loaded.

    Most seem to be using ngGridEventData but they complain that it fires multiple times.

    It seems to me that we know both how many rows of data there are and how many rows there currently are in the grid, so, when these are equal then the grid is fully displayed.

    I may be wrong about this, I am just about to code it & see, But, whether using this method or another, it seems like a event would be a welcome addition in v3.

  9. I am new to AngularJs (and, indeed, to JS; this is my first client-side app) and am trying to figure out how to implement master/detail.

    I find the example at http://angular-ui.github.io/ng-grid/ not to be very useful. It would have been better had it actually shown two ng-grids in a single controller.

    Further, a typical M/D will have three grids – sort of master, detailish, lotsofinfo.

    For instance, a grid with a list of customer names. When one is selected a second grid is populated with that customer’s orders (just an overview, say order data & total cost)), and when an order is selected the full order details are shown below:

    Danger, Will Robinson! Bad ASCII art follows:

    +—————+ +—————-+———+
    | Customer | | Order date | Total |
    +—————+ +—————–+——–+
    | Acme, inc | | 1 Apr 2014 | $299 |
    +—————+ +—————–+——–+
    | XYZ, ltd | | 8 Apr 2014 | $600 |
    +—————+ +—————–+——–+

    +———————————————+
    + Full details of the sale go here +
    +———————————————-+

    Just to make it interesting, I personally, am fetching the contents of these grids in a 3 step JSON process from the server. I believe this to be quite common. All demos which I have found have the data hard coded in a preset array.

    I have still to find a Plunk of anything approaching this, but my request for v3 (if not already implements in v2) is that it should be easy to implement this sort of thing (with all 3 grids in one controller).

    Probably via a event.

    It would also be nice to have an official Plunk to help others who wish to perform this rather common task. If I can figure it out for myself, then I will create such a Plunk.

    Btw, I hope that doesn’t come over as complaining. I am deeply grateful for both Angular & ng-grid and would like to contribute.

    Keep up the good work!! (any news on v3?)

  10. Hi,

    Just wondering if there is an official discussion page for the progress of 3.0 ? Just trying to gauge how far away it is and what new features / fixes will / won’t be included.

  11. Hi Rob,

    I see “The application must be broken up into feature modules” in ng-grid 3.0 Philosophy at http://ui-grid.blogspot.com. Does this mean I will be able to build my own ng-grid.js file with only the modules that I need in 3.0?. (like I can do in angular bootstrap)

  12. Is UI-Grid 3.0 ready for release ? I went through the tutorials and did not see the grouping feature anywhere which was supported in 2.0. Do you plan to add it ?
    Also once I hide a column by clicking a column menu, how do i bring it back ?

  13. Would like to upgrade to v3 currently we’re using 2.0.10 which has worked awesome for the 12 or so grids we use!

Leave a Reply

Your email address will not be published. Required fields are marked *