Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Additional UI framework for full feature table #1514

Open
nitrosx opened this issue Jun 26, 2024 · 7 comments
Open

Additional UI framework for full feature table #1514

nitrosx opened this issue Jun 26, 2024 · 7 comments

Comments

@nitrosx
Copy link
Member

nitrosx commented Jun 26, 2024

Summary

This issue is to collect the opinions of all the collaborators regarding including and utilizing a second full framework on top Angular to implement specific functionalities.
This issue has been created following the creation of PR #1505, which adds WebIX framework framework to implement a table which offers a better UI/UX, as the one currently implemented in SciCat is very basic and not enterprise level.
The current table is implemented on top of Angular Material table component, which does not offer the following nice-to-have features:

  • variable column width
  • drag-and-drop column ordering
@nitrosx
Copy link
Member Author

nitrosx commented Jun 26, 2024

From @sbliven

We talked about this PR in the meeting today. A couple concerns came up.

  • Pricing Are all the features we would need available in webix standard (the GPL version)? IMO webix pro licenses are out of the question.
  • Client-side filtering. I think users would be very confused that filters are done client side and apply only to the current page of results. I think it needs to be done server-side like the facets, or else it should be omitted from the table.
  • Maintenance. It seems like adding webix would increase the complexity of the frontend significantly, and could increase the maintenance burden. I get that this is just a proof of concept, but while the sorting and resizing features shown here would be nice they would hardly be worth it if they make the frontend harder to maintain and develop. Do you see some "killer features" that would have a high impact on the user experience that would come with webix but not available with the current framework?

@nitrosx
Copy link
Member Author

nitrosx commented Jun 26, 2024

My concerns are:

  1. increase in code complexity
  2. increase in code management and maintenance
  3. steeper learning curve for new contributors
  4. efficacy of using visual components coming from multiple framework
  5. closed source or licensed solution

I wonder if we can just use a single library that implements a full feature table and focus our effort in to make the user UX consistent across all the frontend.

@nitrosx
Copy link
Member Author

nitrosx commented Jun 26, 2024

Please, provide your opinion and suggestion for alternative solutions.

@nitrosx nitrosx changed the title WebIx table addition Additional UI framework for full feature table Jun 26, 2024
@nitrosx
Copy link
Member Author

nitrosx commented Jun 26, 2024

Possible solution for a full featured table:

@nitrosx
Copy link
Member Author

nitrosx commented Jun 26, 2024

Other possible solution:

@Ingvord
Copy link
Member

Ingvord commented Jun 26, 2024

@nitrosx , thanks for aggregating all of this info in this issue!

Please note that #1505 only shows table, that does not necessary means we have to use only tables though.

My idea is to add a new visual layer on top of Angular to get UI/UX similar to say this

The PR mentioned above is just a proof of the concept of integration between Angular and Webix e.g. data loading. I will try to find resources to build a fully functional demo, at least for the search page (replace also filters form and the search bar, and the header)

@Ingvord
Copy link
Member

Ingvord commented Jun 26, 2024

Also concerning webix license: it is GPLv3, however quote from their readme:

Starting from Webix 2.4, it possible to use a FLOSS Exception to the GPL License. This allows to use Webix in your applications distributed under MIT, BSD and other open source licenses.

So SciCat with its BSD-3 is fully compatible with webix.

Hope this clarifies

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants