MASTER'S CAPSTONE PROJECT • DESIGNED 2025
Turning shopping into saving
ROLE
Product Designer
TIMELINE
May – Aug 2025
SKILLS
  • User Research
  • Figma
  • Claude Code
OVERVIEW
Stash is a goal-based savings app that channels the impulse of online shopping into a healthier habit.
Instead of resisting the urge to spend, Stash redirects it, transforming familiar online shopping behaviors into deposits that compound into meaningful financial momentum.
PROBLEM + OPPORTUNITY
Existing savings tools don't support trigger-happy shoppers at the moment they feel the urge to shop...
... and for some, the ritual of shopping matters more than what was being bought.
Conversations with five self-described impulsive shoppers revealed a common pattern: all of them experienced buyer's remorse immediately after purchase. The emotions that drove these purchases were also difficult to anticipate, making them hard to account for with traditional budgeting apps.
Impulsive shoppers have no real-time support when cravings hit, creating a clear opportunity for a tool that satisfies the urge without the financial cost.
CORE FLOWS
DESIGNING FOR CONSTRAINTS
How should users upload items into the app?
Ideally users could paste product links and the app would auto-fill details like image, title, and price, but scraping across e-commerce sites introduces reliability, maintenance, and legal challenges.
TRYING FIGMA MAKE
Building the jar-filling interaction helped me understand how it should work in a way static mockups couldn't.
Though time constraints regretfully limited the scope of this project, I tested the jar-filling interaction in Figma Make and was impressed by how quickly I could bring it to life.
REFLECTION
My takeaways...
Leverage existing behavior instead of trying to reinvent the wheel
By leaning on recognizable patterns like browsing, adding to cart, and visual progress, I could make new habits feel instantly intuitive.
Design → code tools are the future of prototyping
I'm happy I took the time to work on the jar-filling interaction. It turned what began as an abstract idea into something tangible that would have been difficult to prototype in Figma.
If I had more time, I’d explore Rive’s data binding to gain finer control over the animation logic and state transitions.
Claude Code worked great for spinning something up, but it lacked the precision that came with a platform like Rive.