Hello
When you start to have a fairly extensive installation with Gladys, you also start to have a lot of scenes!
I think it would be more readable and easier to use if we could put our scenes into categories (visible as a banner, for example) that can be hidden and displayed.
Or in the manner of Dashboards with a dropdown list?
What I think is complicated is knowing whether we want predefined categories… or the ability to create our own categories. Since each user will want to create a scene that is unique to them, the same will go for the categories.
I also think we need to find a way to organize the scenes to manage them better.
I had considered the possibility of displaying them as a list whose order can be changed by drag & drop.
This would allow more to be displayed on a single page, with better readability.
Especially since by naming them appropriately, you can find your way around quite easily:
[LIGHTS] Dim the brightness in the evening
[ALERT] Mailbox mail
[ALERT] Temperature < 15°
[INFO] The dog's bowl is empty
Small bump because this point is starting to interest me
I’ve got a parent scene that is triggered by a motion sensor.
This scene only triggers scenes in // which themselves trigger others ^^
So I end up with a lot of scenes and it’s quickly confusing
![Screenshot_20220813-225015_Chrome|180x500, 100%
Also, the feature request already existed since October 2021:
@Pasdesushi, @PhilippeMA, @Psoy (I see that you voted for both), @syper and @Kalvin maybe could you group your votes on this one and we’ll close the other (the discussion will remain accessible)?
Great work on the development, functionally it’s nice but I think there’s a bit of design work to do
Editing
In terms of editing, it’s weird to have tags inside a looong textarea that takes 100% of the width of the screen
Maybe the tags could be displayed « normally » on a grey background, and there could be a small « + » button to add tags (and an « x » on each tag to remove it)
You’re right, I just used a lib « react-tag-input-component »
Ok I don’t see anything similar as a lib on the internet. I’ll probably create my own component. Should I try to make it as generic as possible so we can use it elsewhere?
Yes, now that you say it it’s obvious.
I think I’ll have to make changes in the models for that because for the moment I had gone with an array of strings in the devices. But to have access to all the tags of all the scenes I think I’ll have to create a « tags » table and a « device_tag » table. And therefore add new CRUD routes to manage the tags, what do you think?
Again, I think adding a « tags » table is important because that will avoid having to go through all the scenes to get all the tags.
Wouldn’t it be better to abandon the table view of scenes for just a list? Because we’re adding more and more things to the scenes display and we have less and less space.
The relational table is surely a good idea; reading that I thought it could be useful to be able to work on the devices!! I’m thinking specifically of MQTT devices that are also used virtually. Being able to link virtual devices to physical devices via tags, for example group the virtual ones, etc!!
Not a fan either, functional but it looks a bit like a « big block » in the middle of the screen, it doesn’t really fit into the existing design
If you don’t have many ideas, what I usually do is see how other products handle it: open a few products you use that have this kind of tagging system, and see how they do it. There’s no point reinventing the wheel when designers from big companies have already worked on this for hours
For example, GitHub has split their « issue » page into 2 parts:
I’m not saying it’s the solution, but in my opinion it’s worth exploring! It would allow you to put your component « react-select » in a sidebar that would be « delimited » and wouldn’t take 100% of the width.
I have quite a few projects in mind for the scenes: viewing the execution history of the scenes, with what happened in each run, and that could fit in this sidebar
This morning I was thinking that we could add filters to the scenes view.
For example: active / disabled / by type of triggers (selection of devices) / etc.