Comments (8)
These seems like a fun one. New to web3 so I'll be getting some education. 🎓
from icostats.
FYI web3/web3.js#905
from icostats.
Seems like our little exchange form is submitting on successful wallet address validation which is fired in a debounced onchange handler.
Since there is no submit button, the web3 enabled user will be stuck experiencing one of two scenarios:
- A user's wallet address is prepopulated on componentWillMount, but they need to trigger an onchange for it to validate (triggering submission).
- A user's wallet address is preopulated and immediately validated on componentWillMount, triggering submit before they have the chance to enter an amount of ETH to send.
To address this we can:
- Add a submit button and force the user to manually submit.
- Fire validation for every onblur of either input, and trigger submit if both pass validation.
- Do something else?
I'm personally prone to option 2, but am open to any suggestions.
from icostats.
Hmmmm... Honestly if they don't have to type or copy-paste then I think both of those interactions are kind of awkward. My vote is that we stick to the conventions we're already used to seeing on web3 sites - the input box becomes a dropdown list.
If the user has web3, we should also be triggering the transaction for them to send to the deposit address. Basically right now, people have to type in ETH address, then copy the deposit address, then go open their wallet and manually enter the transaction.
For web3 users, we have all the APIs available so that they can simply:
- choose from their saved addresses on a dropdown.
- Transaction is auto-generated in metamask (or similar) and they just click 'Accept' and sign the transaction.
Thoughts? And yeah, this should be a really fun one!
from icostats.
@cooper care to show me an example of this user flow in the wild? Thanks! 😁
from icostats.
Yeah, examples off the top of my head are etheroll.com and etherdelta.github.io
Etherdelta has a dropdown to choose an address. Etheroll just chooses the first one for you.
Also, on Etheroll, when you place a bet, its creating an ETH transaction pre-filled for you with the right data, and then asks you to sign it via web3. we could do the same.
from icostats.
Looking at these two sites I'm thinking we should always do dropdown.
My reasoning being that selecting an address will act as the submit action, triggering address validation and transaction prefilling. Seem good?
from icostats.
Yeah, exactly what I had in mind.
from icostats.
Related Issues (20)
- Expose Public API
- Show ETH/BTC on comparison chart HOT 2
- 1st day prices (1st day on exchange)
- Base currency not applied to percentages
- Make available to compare growth % of all available crypto within certain timeframe (a user choose a time horizon - lets say from 1 Jan 2016 until now - and the % growth of all available currencies appears)
- Make a comparison of % growth for more than 1 month time period;
- Export to Excel HOT 1
- Add survey module to support simple in-app Qualaroo-like surveys.
- Date / Time Range Picker HOT 1
- Sorting on ROI v.s. ETH doesnt take into account whether relative or absolute is selected
- Remove decimals from percentages to improve readability.
- API Documentation Page
- Coins to List HOT 13
- Left-hand menu for shapeshift doesnt work.
- Ability to add tokens programmatically
- Description for all metrics using the same UX as ROI v.s. ETH
- Visualize the ICO economy against ETH
- Redis Cache
- Performance Optimizations
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from icostats.