Hey All,
The version 4.0 beta is now available for you to have a play with.
It is still under development in some areas but all the core functionality is in and working, if you find any bugs or have any feedback please create an issue so i can track it all.
Checkout the Version 4.0 Documentation for more information.
The website has also had a bit of a going over, there are now:
Release Notes to explain all the new functionality,
A step by step Upgrade Guide to take you through how to transition to 4.0
A Browser Support page to take you through what browsers are supported by Tabulator,
A jQuery Wrapper Guide for those of you that want to keep your jQuery code as untouched as possible
And a new FAQ Section to cover some of the most frequent questions i see on the issue list.
Let me know how you get on
Cheers
Oli :)
First off, hats off. Great job!
Secondly; could you explain why you wanted this project to go back to plain vanilla javascript? Are there tremendous advantages using the js version instead of the jquery wrapper? I guess vanilla is much more lightweight, but does jquery perform worse?
Thanks again for an amazing project
Hey @Rodbjartson
Thanks :)
I would be happy to take you through the reasons for removing the jQuery dependency:
While jQuery offers a lot of great cross browser support, which was my primary reason for choosing it as a dependency when i started building Tabulator, this comes at a cost.
jQuery is very processor intensive and consumes a lot of memory to run. while this isnt much of a problem for smaller widgets, when you try and do a lot of operations very quickly its starts getting in the way. Tabulators virtual DOM does 1000's of operations every time you scroll and while improving the efficiency of the virtual render I was hitting the limits of what was possible with jQuery , it simply tries to help out too much behind the scenes and was starting to block progress of Tabulator.
In version 4.1 I will be rebuilding a chunk of the renderer to make it even more efficient now that i can optimize the functions more clearly.
Including jQuery and jQuery UI as dependencies meant that Tabulator and its dependencies were over 1MB in size, which is very large for a library, and while for users with great internet connections this isnt a problem, it is an issue for mobile devices with bad connections or people with poor land line connections. as Tabulator is used all over the world this is an important consideration for me.
Using jQuery on a project can cause compatibility issues with other libraries, and can be especially tricky when dealing with frameworks like vue.js that work on a different programming paradigm, by removing all core dependencies it becomes easier to integrate with other systems.
On the whole the use of jQuery is diminishing. When it first came out it was an amazing library and solved a lot of problems with JS, its use of query selectors for example was ground breaking and its Ajax functionaly was miles better than a raw XHR request. But over the years since its launch most of its key benefits have been written directly into the JS Specifiction, we now have query selectors in vanilla JS and the built in fetch API is every bit as good as jQuery's ajax. There are in fact quite a lot of developers who are put off by using products based on jQuery, so by removing it it makes Tabulator more accessible to a wider audience.
The important thing to note with the jQuery wrapper is that it does not add jQuery back into tabulator, all it does is wrap the new jQuery free Tabulator in a jQuery widget so you can interface with it in a way you are familiar with. So you will on the whole have exactly the same experience of v4.0 with or without the wrapper. Although if you are still using jQuery in your formatters/editors you will take a tiny performance hit there.
The main reason for including the wrapper was that i did not want to force users to have to completely recode their site just to get access to the latest version of Tabulator. it is there for your convenience more than anything else.
I hope that answers your questions, let me know if you would like to know anything else.
Cheers
Oli :)
Thank you for that tedious explanation!
Much clearer now!
How much did you manage to shrink tabulator down to? From the 1MB size to?
Well the tabulator.min.js comes in at around 220k. And the new tabulator_core.min.js which includes only the code needed to build a basic table with none of the modules installed comes in at 96k
Hi Oli
compliments and thanks for Your great work again.
Started to use it immediatly in a pre-production project. So its use on a daily basis in dev. Simple use case: just all data clientside, pager, a few formatter callbacks. bootstrap 4 css.
until now runs perfectly. And seems to be faster already now even without new rendering.
Will start my speed test app as soon as new rendering finished.
Kudos, Michael
Hi Oli
Is there any possibility to view data as tree structure?
Hey @Praveene7
If you are talking about inside a cell then there currently inst a formatter for this, but you could add one yourself.
If you are asking if tabulator can render data as a tree instead of a table then no it cant. Tabulator is exclusively a library for building tables, i have no intention of adding functionally that alters its core purpose.
Cheers
Oli :)
These are great news!!!
I am Vue happy user. All Vue data tables are minimum compared to Tabulator options.
So now, I can use pure vanilla Datatable and adapt to Vue as I want!! With all great features Tabulator are!!
I imagine is a good new to all possible frameworks (React, Angular...), use a incredible datatable witout the old jQuery. You are going in the right way!!
Thanks!
Consider his patreon page ( still have to do it myself ....)
Hey @natxocc
Thanks for your kind words.
it is going to be even better for users of reactive data frameworks like vue. later this year i will be making it so that tabulator can reactivly update when data in the array it uses updates so it will update like any other vue component.
The should be coming in the 6 months.
@tomvanlier thanks :) any patroenage is appreciated :D
Cheers
Oli
Hey All,
Just a quick note to let you know that Tabulator 4.0 has now been officially released!
Thanks for all the feedback :D
Cheers
Oli :)
Most helpful comment
Well the tabulator.min.js comes in at around 220k. And the new tabulator_core.min.js which includes only the code needed to build a basic table with none of the modules installed comes in at 96k