animo / animo-demo

Interactive demo explaining the concepts of self-sovereign identity.
https://demo.animo.id
Apache License 2.0
27 stars 42 forks source link

Add configuration screen #87

Open TimoGlastra opened 2 years ago

TimoGlastra commented 2 years ago

It would be nice to add a configuration screen (accessed by cmd+k) that allows to configure which features to use for the demo. This way you can use the demo with some of the new feautres, without breaking interop with old wallets. Kind of like flags in your browser (very hidden, but possible to change if you know what you're doing).

The features I'm currently thinking of:


We can add custom configuration to the cmd/ctrl+k screen like we already have with change theme (see screenshot)

image
janrtvld commented 2 years ago

Should we keep this open for the other 2 features or wait for them to be implemented in AFJ?

TimoGlastra commented 2 years ago

Maybe create separate issues for it?

I did notice some issues with the current implementation:

https://user-images.githubusercontent.com/23165168/194328374-779a33d7-98b1-4acd-8ccc-4ddddf558101.mov

Screen Shot 2022-10-06 at 15 37 20

https://user-images.githubusercontent.com/23165168/194328400-0a4375a0-e131-43e2-bd55-bab447534091.mov

@janrtvld @rapaktech what do you think?

janrtvld commented 2 years ago
  • If I do reset demo with configuration options, the theme is glitching (see attached video)

Fixed that one.

  • I can't see the currently selected item (credential protocol version or connection type) (see other attached video)

Jim and i talked about it and we just totally forgot about it haha.

  • There is now both configuration and preferences, which to me are two different words for the same thing. I was thinking what if we remove the configuration, and add all the new settings to the top level config screen? There's quite some nesting going on, which isn't needed I think (see attached screenshot)

Great solution. I think we can assume that most people that find out about the cmd+k menu know what they are doing so all these options wouldn't really confuse them.

  • after thinking about it a bit more, I do think we should split reset demo (to reset the demo) and reset configuration (to reset everything in the configuration section of the settings)

This option seemed the best as i assumed it would result in issues if you'd let the user change settings halfway through the demo. Now that we've implemented it i noticed this works just fine so i like this change.

Are you able to pick these up, @rapaktech? I can help you with the currently selected option as that might be a bit more tricky but the other two should be pretty easy.

jimezesinachi commented 2 years ago

Quick question. We already have resetState that is basically resetDemo - resetConfig, and resetDemo that is resetState + resetConfig. So now I should rewrite resetDemo to something that essentially is resetConfig, correct?

@TimoGlastra @janrtvld