Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
That title flashing "1 new message" nonsense is incredibly distracting. Is there a UI way to quickly sort by a column?
Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
41–50 of 136 posts
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#42Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
I have been looking for years for something to replace a custom rendered excel-like table I have. The table has a complex layout: - One fixed top row (date), two or three fixed columns on the left. - Data are rendered horizontally; the number of rows does not change, but the number of columns can be in the hundreds. Does your library support column-oriented data like this (you mention "60+" columns)? Does anyone know…
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#43Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#44Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
Since you're building a library, not a tool, whenever I hire an engineer they'll automatically be using this tool and I'd need to remember to send you more money. The only other products that I have to do this with are either:
1. Monthly subscriptions that automatically charge me the correct amount of money.
2. GitLab which tracks how much I owe the developer and charges me the correct amount of money the next time around.
I'm concerned that I'll pay for this software, download a .js file, check it into my repo, hire a new developer, and completely forget they're using this product.
The biggest difference between this tool and my currently paid-for software is that it has no "check-in" period. I could very easily imagine a scenario in which I violate your license. Here are two:
1. I, as an engineer on a single project in a large company, buy your software and use it in a product. I move on to other stuff and get asked to write new features after a long time completely forgetting your software was paid-for. Me and another engineer start working on the project. We now have 2 devs.
2. Another engineer sees me building a cool project. They copy my frontend as a starter for another feature. We now have 2 devs in a multiproject license.
3. We have the correct multi project license for the correct number of devs but we want to hire some contractors for some cheap work. Hiring these contractors just became a lot more expensive.
As for the pricing, at 54,100 EUR ($62,444.87 USD) for a 50 person team, you're competing with a sizable chunk of an engineers salary. Depending on what part of the world you're in you can pay for 1 quarter to 1 years worth of an engineers time with this chunk of change. It seems you're setting yourself aside from the competition because of performance reasons. If that is the large differentiated factor I'd be thinking the following as an engineering manager:
1. Given the timeline (3 months to 1 year) can I build my own implementation of this product?
2. Given the timeline can I take an open source implementation that has more features, use it until there's a performance problem, then have one of my 10x engineers tweak it to make it perform better?
3. Can I find another paid-for version of this library that will be cheaper? In this very HN post there's another implementation of a similar product with a seemingly similar feature set that is substantially cheaper [0] that is also source available.
So, when I'm crunching the numbers, and have to choose to Build, Tweak, or Buy at a cheaper price, it's hard to justify this product. What makes it even harder to justify the product is the support limitations. The main reason to never choose build or tweak or "buy the cheaper one" is because it won't save you any time. Your support page makes it seem like, however, I'll have to put a lot of time and effort into bending over backwards to make a support request that fits your model. This makes the comparison:
1. Build XYZ and support it
2. Tweak XYZ and support it internally
3. Buy your software and get very non-specific support
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#45Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
How did you implement the scrolling such that it feels smooth/fast/native, but scrolls in one row/column steps (so you never see half a row)? CSS Scroll Snap? Nicely done.
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#46Can't wait for features / extensions!
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#47Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
How did you implement the scrolling such that it feels smooth/fast/native, but scrolls in one row/column steps (so you never see half a row)? CSS Scroll Snap? Nicely done.
There is a blank DOM node "scrollArea" in front of all others that catches the native JS scroll event.
It then converts these scroll offsets (scrollTop and scrollLeft) to cell/viewport coordinates, by default 40px actual pixels per row/column.
So if the scrollArea has a scrollLeft of 40px and a scrollTop of 200px , an underlying DOM node that renders the cell values and column lines, will render at viewport position {x: 1, y: 5}.
The other important part that makes it snappy, is that a viewport of let's say 20 rows by 10 columns does not actually consist of 200 DOM nodes. Only columns are DOM nodes. The values inside a column are made to look like rows by CSS white-space property. So it only updates 10 DOM nodes when scrolling.
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#48Earlier quoted context omitted.
How did you implement the scrolling such that it feels smooth/fast/native, but scrolls in one row/column steps (so you never see half a row)? CSS Scroll Snap? Nicely done.
Is this considered a feature? I thought it was a limitation to deal with performance. I find it rather disorienting.
You're probably browsing the site on your phone, am I correct? I created scroll snap to replicate desktop version of Excel & G. Sheets behavior. I agree that it is not the best option for smaller viewports/touch. It's on my todo-list to introduce smooth-scrolling as well.
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#49Earlier quoted context omitted.
How did you implement the scrolling such that it feels smooth/fast/native, but scrolls in one row/column steps (so you never see half a row)? CSS Scroll Snap? Nicely done.
That’s an interesting case because it’s certainly a cool effect, but it’s kind of a cumbersome UX on mobile. It makes it hard to keep track of the columns as you scroll up and down. At a glance it seems like both the Google Sheets and Numbers iOS apps have smooth scrolling instead of snapping.
I initially created scroll snap to replicate desktop version of Excel & G. Sheets behavior. I agree that it is not the best option for smaller viewports/touch. It's on my todo-list to introduce smooth-scrolling as well, so that scrolling DGXL on touch will work closer to native apps.
Re: Show HN: Datagridxl.js – No-nonsense fast Excel-like data table library
#50Hello HN, I’m Robbert, the creator of DataGridXL.js. DataGridXL is a free (and commercial) editable data table library written in ES6. My goal is to develop the most performant & user-friendly spreadsheet-like data table out there: - It has zero dependencies. You don’t need any framework to use DataGridXL. - It is lightweight (~200kb) and easy to use. It does not even require messing with CSS. - It has its own Virtua…
Hi Robert, This looks like a really great (clean and performant) JS library for interacting with data grid. I'll definitely remember to try it for my next side project. A quick question: is there a way to make only some of the columns read-only in the grid? I looked through the doc [ https://www.datagridxl.com/docs/setting-options ] and it seems like user actions for columns are all (applied to every column) or none.…
Thanks for your feedback!
Right now there is no such option, but it's definitely on the todos of 2020.
At this moment there are not many individual column options: the goal is to implement validation, formatting, read-only prop, etc. At this moment every column just displays raw values & everything's editable.