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

New state for modules #10934

Open
pascalgrimaud opened this issue Sep 21, 2024 · 16 comments
Open

New state for modules #10934

pascalgrimaud opened this issue Sep 21, 2024 · 16 comments

Comments

@pascalgrimaud
Copy link
Member

Today, we have 2 states for modules:

  • available, displayed in the UI
  • disabled, which are hidden, specially because it's not maintained

I want to add a new state:

  • beta
  • wip
  • or another name

These modules will be displayed with a warning or another color (any suggestions are welcomed)

So we can start new modules and get some feedbacks, and totally rework if needed, without worrying about the use

What do you think?
Good or bad idea?

@renanfranca
Copy link
Contributor

@pascalgrimaud : I believe it is an excellent idea!

I have often felt the need to release something with beta status at places where I've worked, but it was never allowed because they preferred to keep testing internally until the functionality was complete.

I want to add a new status:
beta
wip
or another name

I think the term "beta" encourages testing more than "wip" (which suggests it might not even be usable).

These modules will be displayed with a warning or another color (any suggestions are welcomed)

Regarding the interface, I think a light orange color and a small label reading "beta" directly on the module box would look nice.

If the idea 💡 is approved, I volunteer for this task 🤩

@renanfranca
Copy link
Contributor

@pascalgrimaud: I am looking for the next issue to work on. Can I start working on this feature?

@pascalgrimaud
Copy link
Member Author

Yes you can, @renanfranca but I have more ideas on that. I don't want to limit to 2 states (availabled / disabled).

We should use something like a priority (a value between 1 to 5 for example). Alternatively, we could use a ranking system like in manga, such as Rank S, Rank A, Rank B, etc., to determine which modules to display.

So we can choose to display what we want:

  • all modules
  • only modules with rank S
  • only modules with rank S and A
  • etc...

As you can see in this screen:

image

There are too many modules now, and some are not used frequently. We should have the ability to decide whether to display them or not.

Maven or Spring Boot must be Rank S
htmx-webjars (sorry) should be Rank B or C, or lower

@pascalgrimaud
Copy link
Member Author

cc @murdos : what do you think?

@pascalgrimaud
Copy link
Member Author

Let's start by small steps:

  • back: add new information which is related to RANK_S, RANK_A, etc
  • back: each module can have a Rank, but by default, it would be RANK_D (the lowest)

@renanfranca
Copy link
Contributor

Let's start by small steps:

  • back: add new information which is related to RANK_S, RANK_A, etc
  • back: each module can have a Rank, but by default, it would be RANK_D (the lowest)

Thanks 👍. Should I implement the beta state, too?

@renanfranca renanfranca self-assigned this Oct 8, 2024
@pascalgrimaud
Copy link
Member Author

No need, beta state will be RANK_D

@murdos
Copy link
Contributor

murdos commented Oct 8, 2024

cc @murdos : what do you think?

Honestly I'm not convinced, this seems to be a bit complicated and arbitrary.

I liked the original idea of highlighting modules in an experimental/beta state.

But If the landscape is overloaded, I think we should explore other solutions with https://github.com/ascelineboullen.

@pascalgrimaud
Copy link
Member Author

pascalgrimaud commented Oct 8, 2024

Maybe let's wait a little bit, after your meet with @ascelineboullen

And I agree it's totally arbitrage
But we need something to filter or to highlight the main and important modules. Currently, I use ctrl+f when searching postgres, and it's not really nice :-D

@renanfranca
Copy link
Contributor

But we need something to filter or to highlight the main and important modules. Currently, I use ctrl+f when searching postgres, and it's not really nice :-D

@pascalgrimaud : I've got two ideas that might help:

1 - Add an extended JHipster Lite module that lets you hide modules based on tags.

2 - Or maybe we could add an option on the landscape screen to hide or highlight modules by tags. That setting could be saved in local storage so you don't have to reselect it every time you hit F5.

WDYT?

@pascalgrimaud
Copy link
Member Author

1 - Add an extended JHipster Lite module that lets you hide modules based on tags.

No need to use an extended JHipster Lite module, I use a specific profile with a lot of modules in the jhlite-hidden-resources.slugs key

Or maybe we could add an option on the landscape screen to hide or highlight modules by tags. That setting could be saved in local storage so you don't have to reselect it every time you hit F5.

It could be a search input, like in patches page

image

@renanfranca
Copy link
Contributor

It could be a search input, like in patches page

image

image

In the picture above, the search bar automatically positions the module in the right place. So, should the input text center the module on the screen? Or should it have a different behavior? My concern is placing the search input text in a way that doesn't interfere with the module's visualization.

@renanfranca
Copy link
Contributor

renanfranca commented Oct 10, 2024

@pascalgrimaud : I created a quick demo of how I think the search bar should work (ignore the search button, which wasn't needed). WDYT?

edit: the video is lagging, but it's smoothly

search_bar_demo.mp4

@pascalgrimaud
Copy link
Member Author

Great @renanfranca !
It's nice to have but there should be a dedicated ticket for that ;)

@renanfranca
Copy link
Contributor

Great @renanfranca ! It's nice to have but there should be a dedicated ticket for that ;)

Thanks! I will create a new issue for that ;)

@DamnClin
Copy link
Collaborator

For me, the idea of module rank is good. I think ranks should go on landscape screen and we can remove replay.

An idea to rank modules:

  • D: Not really usable as is, unless you have good expertise on the subject (ex: custom-jhlite);
  • C: No known usage on production product (ex: vue-core, the current version);
  • B: One declared usage on production product (ex: kipe-authorization);
  • A: Multiple declared usages on production product, by multiple person, on various projects and demonstrated usage on a talk, book or blog post (ex: java-base);
  • S: A and recognized to add some features that are not available otherwise. Features must be really unique and this must be recognized by at least 10 person with a vote on any social network (github beeing a social network). With those criteria spring-boot-cucumber-mvc is a good candidate (missing votes).

Here production product is a product that's not a toy project and actually meant for end users.

I also agree that we should rework the landscape. I build that thing on a 34" monitor with way less module than we have now. The whole thing became totally irrelevant. I think this should be done in a mob session and this is probably a prerequisite for that ranking feature.

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

4 participants