Realization
This past week, my primary push was design collaboration (w/ Pavan) + building the structure for Dub’s Onboarding flow (to handoff to Pavan). The video above highlights the prototype that I built (please note copy / visual design should be largely ignored here since this prototype is focused purely on the functional foundation for onboarding; for insight on design, check Pavan’s post from this week).
Feature Overview
Behind the Scenes
Dark Mode support
Our Onboarding flow (and Dub itself) supports using system preferences for Dark Mode (as well as Dub specific preferences for if your preferences for Dub are unique).
Composable Styling
As we begin to build out a design system, I’ve set up a simple framework to make referencing and updating our text / color styles incredibly easy.
Animations
I took some of the core animations from Pavan’s concept animation for Dub’s Onboarding and implemented the basics to make it nice and easy to polish and take it over the finish line (more complex animations require complex - or at least thoughtful - interface / data architecture so this was a big feat).
Custom Paths
The onboarding features various paths which we can adapt and customize based on user preferences and data we gather from their wallet identity.
Build / Feature Flagging
Robert and I collaborated to build in support for Build / Feature Flagging so we can support different functionality based on which version of Dub a user is using (we can have special admin / design / dev tooling on our version, A/B test features, etc.).
Analytics
Onboarding will have fundamental analytics so we can optimize onboarding as a seed for long-term user success with Dub. We’re excited to continue to experiment with onboarding as we feel this step is critical as we are trying to build trust and confidence with users from their very first interaction with Dub.
Process
Primary Challenges
N/A
This week was pretty smooth sailing.
Learnings
ChatGPT is both a 10x dev and a .1x dev
I’ve started to keep ChatGPT open at all times on one of my monitors and I’ve found it can accelerate development 10x but also create massive obstacles with just the same frequency (it’s often quite confidently incorrect).
I’m learning to leverage ChatGPT for a first pass on building interfaces that I can functionally describe and to get un-stuck from complex coding problems or errors. Sometimes ChatGPT can really feel like a superpower.
Next Steps
Handoff to Pavan for Polish / Interaction / Animation
Tomorrow I plan to pass off the functional framework for Onboarding to Pavan so he can focus on bringing life to the interface through some polish, interaction design, and animation (as previewed in his post this week).
Next Week: Browser Design !!!
After spending this past week heads down in the world of Onboarding, I plan to bounce back to focusing on interface design for Dub. I’ll focus on connecting all of Anupam and Robert’s recent work to tangible frontend components.
Next 4 Weeks: Community / Design
As I highlighted last week, now is the time to get started on external comms / community / brand building / etc. I’ll ramp into this alongside my interface design work and gradually shift more of my focus towards this.
It’ll be a bit challenging to ramp into this work as I’ve grown accustomed to nearly 100% dev work these past ~2 months and it can be harder to measure productivity / success with community work as opposed to simply building out a list of product features. I’m excited for this challenge and new rhythm.