Inspiration

Millennials and Gen-Z have had a particularly hard time when it comes to the financial tenets expected from previous generations. Finances can be a point of angst, stress, and avoidance. Our overarching goal is that improving finances doesn't have to be a classic spreadsheet and multiple charts fix. It can be a personable, funny experience to nudge people on the right track.

Millennials and Gen-Z understand "roasting"/joking isn't always just for laughs. It can be a way to motivate and correct behavior without it sounding as harsh as a declarative statement. A great alternative to make an impact as a friend.

We combined this cultural norm with a sensitive topic, finances, and created Spending Roast. An app where you connect your bank and get near-realtime purchases, depending on your bank, of the little demon freenemy flame joking about your recent purchases.

What it does

The user flow of the app is an onboarding flow that clearly lets you know this isn't your regular finance app. The first screen of the flow shows a smiling fire avatar, which, on the next screen navigation, turns its smile into a devilish grin. This flow interactively introduces the user to the concept of the app and connecting their bank account.

When a user completes the onboarding flow, connects their bank account, and then enables roasts. For each transaction made, a roast will be generated and delivered to their phone via notification (thank you, One Signal!) and is accessible on the 'History' screen of the app.

How we built it

First, we created designs for the app using Figma and AI image generation for inspiration to incorporate into the Figma designs. I (Jabari) was really attached to having an Avatar for the app to make it a more personable app, so I watched 10s of YouTube videos about Rive and combined my younger self's love for animation to create the avatar. We then used Plaid sandbox and documentation to learn about the API before requesting production access.

We tried out many different LLMs to see who had the best filtering/content moderation, trust in the community, and could still generate a funny roast. Gemini won!

From this point, it was a grind connecting all the dots together and implementing the UI to make it a cohesive experience.

Primary library/framework - Expo React Native Notifications - easy choice, One Signal Finance Data - Plaid Data Storage/Auth - Supabase AI/LLM - Google Gemini Animations - Rive Primary Code Editor - Cursor

Challenges we ran into

Plaid Production Access

The biggest hardship of creating this app was securing Plaid production access. The API itself is extremely verbose and does require a deep understanding to ensure all edge cases are handled. On top of this, to release an app using Plaid, you must request production access.

This required not only thorough documentation about the app's use case, how we handle data, etc, but also required significant data handling and cleanup implementation to be compliant.

The gaps between getting feedback from Plaid support and implementing back and forth were nerve-wracking, knowing we put so much into this app and were dealing with legal concerns and the bureaucracy of Plaid + the financial industry.

Luckily, we got production access ~1.5 weeks before the deadline and could verify it works before submitting to the app store!

Minor hardship

  • Due to the sensitive nature of the data, Apple Review required us to include our LLC name in the app name, which made us change the app name completely

Accomplishments that we're proud of

We are proud of the execution of a novel idea that uses multiple services and new skills we acquired to make it work by being customer zero. For many apps we've worked on, it's easy to only focus on the requirements without taking a step back. The app is supposed to live with people out and about living life, so we wanted it as personable as possible.

Instead of asking "Does it work?" we:

  • changed the flame avatar's animation until it made us smile
  • tweaked the prompts for Gemini until it made us laugh
  • made sure every time we went through the onboarding flow, it felt personable
  • had lots of fun with each other, sharing what roast we got for a purchase

What we learned

  • The importance of data privacy in general, and especially with financial data
  • Interactive UI design
  • How to send dynamic notifications

What's next for Spending Roast

Spending Roast can be much more than a viral "meme" app; we want to add variants of the traditional finance tracking apps to our app, but make it much more palatable so it doesn't feel like such a static experience and caters to our target audience, Millennials and Gen-Z.

Built With

Share this project:

Updates