open-rmf / rmf-web

Apache License 2.0
87 stars 40 forks source link

Cleaning up the dashboard cruft + addressing the current issues with the dashboard #984

Open koonpeng opened 2 months ago

koonpeng commented 2 months ago

Before proceeding, is there an existing issue or discussion for this?

Description

Throughout the last few months, there have been many changes made to the dashboard specifically catered certain scenarios (e.g. There are many hacks put in so that things render properly on very specific devices). There are also many areas of the dashboard that is lacking and can be improved.

aaronchongth commented 2 months ago

Updated original post, shifting json form migration to https://github.com/open-rmf/rmf-web/issues/997 instead

aaronchongth commented 2 months ago

Updated original post, assigning lower priority to showing predicted length of scheduled task, as it can vary wildly depending on which robot gets assigned the task, and there would be follow-up difficulties of

I would actually suggest that we make the length of execution a part of the schedule form, with a default value of the current 45 minutes, and let the users assign more appropriate values themselves. This will also help resolve the UX issue of shorter schedules (e.g. 5 minutes), where nothing can be read from the schedule event as the event box is too small, which gets increasingly bad if users clutter a lot of short scheduled tasks together.

koonpeng commented 2 months ago

Updated original post, assigning lower priority to showing predicted length of scheduled task, as it can vary wildly depending on which robot gets assigned the task, and there would be follow-up difficulties of

  • what happens if the nav graph changes and a task can be executed much faster than before, should the schedules already in the DB be updated to reflect the new length of execution?
  • length of execution will be entirely dependent on the user's setup of RMF

I would actually suggest that we make the length of execution a part of the schedule form, with a default value of the current 45 minutes, and let the users assign more appropriate values themselves. This will also help resolve the UX issue of shorter schedules (e.g. 5 minutes), where nothing can be read from the schedule event as the event box is too small, which gets increasingly bad if users clutter a lot of short scheduled tasks together.

The length of a scheduled task is just the estimated length, it doesn't have to be very accurate. Making the user set an expected length is a possible solution. As for the user setting very short 5min schedules, if the calendar library doesn't handle that, then I guess we can consider making a PR to improve it. Google calendar for example has a minimal size.

aaronchongth commented 2 months ago

The library handles it properly without issue, my concern is that of readability at first glance of the schedule calendar where it is just littered with little blocks with no texts (same as google calendar if we cramp a lot of small events), I believe we should just let users configure the length, since if there is a UX issue, they can set a longer time for readability on their own