-
Notifications
You must be signed in to change notification settings - Fork 42
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
feat(plugins): ui for plugins management #2079
Comments
There are some difference between these designs and what we have in the CLI and backend Rust: We could bring some of the concepts from the CLI to the GUI and vice verse. Here are my suggestions: GUI
/// The status of a plugin on the current machine
///
/// Install-ability determined based on the `runtimes` and `platforms` properties
/// of the plugin and the runtimes and platform of the current machine.
#[derive(Debug, Display, Clone, PartialEq, Eq)]
#[strum(serialize_all = "lowercase")]
pub enum PluginStatus {
/// Latest version installed
InstalledLatest(Version),
/// An outdated version is installed
InstalledOutdated(Version, Version),
/// Available on this machine but requires installation
Installable,
/// Required runtime not available
#[strum(to_string = "requires runtime installation")]
UnavailableRuntime,
/// Not available on this operating system platform
#[strum(to_string = "unavailable on this operating system")]
UnavailablePlatform,
} CLI / Rust
|
Have this as the idea for the plugins. Trying to lean on more iconography to show state of the plugin while still keeping the ability to enable and disable plugins. Have plenty of room to add any more details about the plugins too. Have tried to hide some of the error states behind a hover so it also doesn't cram the rows. And we can give specific reasons to why that plugin can't be installed. Have included the filters up top too. In regards to the order of the buttons. I left the install and uninstall buttons on the end, since they're the two largest actions that would effect everything else in the row. Having them part way through a row meant it felt unnatural for all the other content to appear around it. |
Thanks @kusalekanayake, looking great! Some relatively comments / personal preferences:
Also reminding myself that in the Rust
|
Great, thanks @nokome. I also wanted to ask about the enable and disable action. Is that going to be functionality we are intending to have upfront? |
Getting closer :) Some more suggestions:
|
Sweet, happy to change most of those things, however with filtering it seems a little tricky to do radio buttons. I played around with that idea but even with the pairs being mutually exclusive going from selecting one or the other to selecting both became tricky. I guess you could have them select an already selected radio button to toggle it off but that's not how they would normally work. Maybe just having a reset filters button could be a work around? |
OK, thanks. I don't think we should spend any more time on it right now - wait until we have at least 10 plugins 😅 |
Fair point! |
In #2027, @kusalekanayake posted some initial designs for a plugin management UI. This issue is to iterate on those (separate from all the other designs in that issue).
The text was updated successfully, but these errors were encountered: