Jump to content

RockTabulator - powerful, performant and versatile data grids for ProcessWire


bernhard
 Share

Recommended Posts

DEPRECATED! I'll release a commercial module "RockGrid" in 2023/2024. If you are interested please write me a PM 🙂
----------------------------------------

This module is (or will be) the successor of RockGrid. It uses http://tabulator.info/ as grid library that is completely open sourced (MIT, no commercial extensions) and as far as I've seen so far at least as powerful as ag-grid, which RockGrid is using.

GOALS:

  • Support various data sources (RockFinder, JS, PHP, SQL)
  • Supported only in PW Backend + Uikit
  • Easy setup of new fields

DOCS:

Currently the readme is terrible, sorry for that. But you get lots of examples after installing the module! From simple tabulators to more complex ones.

INSTALLATION:

Just install the main module. RockMarkup is a required dependency. Please also have a look at the RockMarkup examples before jumping into RockTabulator!

STATUS:

The module is early alpha and can be downloaded from github: https://github.com/BernhardBaumrock/RockTabulator

It took me two weeks of rewriting RockMarkup/RockTabulator to get where I am now and I think I'm quite happy with the setup. There might be some breaking changes though in the near future. At the moment the main features that should be working properly are:

  • Data sources: SQL, PHP, JS
  • Sandbox for easy setup
  • Multilang

This means basically everything that is possible with Tabulator is also possible with RockTabulator. Though, there are no custom helpers/plugins yet. That's the next step and whoever is willing to help, please give me a shout ? 

If you have any questions or ideas please let me know ? 

  • Like 15
Link to comment
Share on other sites

Hi beluga, 

I'd be totally fine with allowing frontend if anybody wants to work on that. Personally I don't have the need for any grids on the frontend. And I'm not sure if it would be better to show a rocktabulator than implementing a custom regular tabulator. 

While it sounds nice to support frontend for a rocktabulator I'd very much prefer to have a way to present parts of the pw Admin to public users if necessary or wanted. In other words to have public backend pages (there was some discussion about that). This could be rocktabulator, but could also be file upload fields, forms, etc. 

I feel like supporting tabulator on frontend will have some side effects that will make development more complicated... But I'm happy if you come up with a good solution and prove me wrong ?

Link to comment
Share on other sites

  • 3 weeks later...

Hey @bernhard If you  like, I would to share my experiences with Tabulator inside of PW (without using your module).

I implemented working PW panel links inside the Tabulator, that update the table after changing a page (but the solution is not yet optimal) and virtual rendering and also grouping. I think these things would be great for RockTabulator.

If you like to get some information, you can contact me on Skype. I do not have enough time to write a tutorial right now.

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...
  • 1 month later...
4 hours ago, bernhard said:

Hi @kater

I've just added support for RockFinder3: https://github.com/BernhardBaumrock/RockTabulator/commit/b41362bbc4ffa29785fdfab6462ebaaabdabef41

Usage is the same as with the oder rockfinders, though the commit also includes an example ? 

Awesome. Thanks!

Maybe it's possible to add an example for tabulator download functionality (with topMarkup?) at some point?
http://tabulator.info/examples/4.0?#download

Link to comment
Share on other sites

Pardon, me again.

Is there a way to add the tabulator download (incl xlsx, pdf) functionality?

thanks!

EDIT (Answer):

$("#xlsx").on("click", function(){
		grid.table.download('xlsx', 'data.xlsx');
});

 

Link to comment
Share on other sites

  • 1 year later...

Been trying to get to griips with using RockTabulator to create grids today inside a Process Module.

public function ___executeContactsPage(){

    $finder = wire('modules')->get('RockFinder3')
    ->find("template=user,sort=surname,id>40")
    ->addColumns(['firstname','surname', 'linkedin']);
    bd($finder);
    $grid->setData($finder);
    return $grid;
    
  }

The data is coming across fine, but I cannot work out how to define $grid - Undefined variable: grid. Any help appreciated

Got myself confused between RockGrid and RockTabulator

Actually the reason I was getting all the problems is that my version of PW was not working with RockFinder3, but I did not get the error message until I dumped the sql.

 

Undefined variable: grid

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...