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

Improve wizard UI/UX [discussion] #85

Open
mariopil opened this issue Oct 3, 2023 · 2 comments
Open

Improve wizard UI/UX [discussion] #85

mariopil opened this issue Oct 3, 2023 · 2 comments
Labels
enhancement New feature or request

Comments

@mariopil
Copy link
Member

mariopil commented Oct 3, 2023

An idea came to my mind how we could improve the wizard UX. Instead of having a plain code display with a list of contracts to choose from, let's divide the wizard into 3 parts/dialogs:

  1. Display a list of available contracts to choose from in a form of fancy icons - each contract would have its own unique colourful icon, plus a search bar would be available too.
  2. User selects a contract and another dialog opens up with fields to setup the contract (e.g. ticket price for Lottery, min number of participants required, etc.)
  3. Finally a code is generated which user could copy and invoke.

Untitled document (1)

The generated code would be a new contract:

  • UI creates new contract which uses the user selected one as a composition, e.g. Lottery
  • it creates init function that initializes the Lottery.init() with the params selected by user
  • generates additional functions for each Lottery contract function (create_lottery, play_lottery, etc.)
  • generates hints for each function invoke (as it is now)

Everything would be fully automated, no hardcoding. The only thing we would have to stick with is the init function of the contract so that UI knows where to start from.

@mariopil mariopil added the enhancement New feature or request label Oct 3, 2023
@eloylp
Copy link
Member

eloylp commented Nov 13, 2023

I think this idea is somehow related with #104 . I see them as different tools from an user perspective:

  • Users who know what they are looking for .The search engine will be helpful here.
  • Users who dont know what they are looking for - A listing of contracts is better to showcase what are some of the posibilites.

So both kind of ways of accesing the data would be important IMO. How to combine them ? 🤔

@geofmureithi
Copy link
Contributor

A listing of contracts is better to showcase what are some of the posibilites.

This works well. We have to figure out how to pull network contracts as code, unless we mean to import as an interface.
Maybe we can generate shell methods if its the former using FunctionSpec.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants