## Inspiration
It all started way before the hackathon. I’m Shivam, a second-year Computer Science (AI & ML) undergraduate with a strong interest in data science, and machine learning, and a deep curiosity for the BFSI space—Banking, Financial Services, and Insurance. I’ve always loved explaining finance to others and have already worked on projects like customer segmentation and credit risk analysis.
So when I came across the Bolt Hackathon, I thought—why not give it a try? I had never written production code or touched TypeScript before, but I had this vision of someday building a finance literacy app, maybe as the backend guy handling the pipelines. This hackathon felt like the perfect place to start turning that dream into reality.
## What it does
Dough-Jo is a gamified financial literacy app designed to help users—especially beginners—build essential money skills in a fun, interactive way.
The app guides users through bite-sized lessons on core financial topics like:
- Saving & Investing
- Budgeting
- Credit & Debt
- Insurance
- Retirement Planning
Each lesson is paired with quizzes to reinforce learning and help users test their understanding. As users progress, they earn achievements, collect coins, and build learning streaks, making financial education engaging and rewarding. The app tracks progress, awards badges for milestones and encourages consistent study habits.
With a focus on practical, real-world concepts—such as the difference between savings and investments, the power of compounding, credit scores, and spotting financial scams—Dough-Jo empowers users to make smarter financial decisions and gain confidence in managing their money.
## How we built it
We started building Dough-Jo directly on the Bolt platform, leveraging its rapid prototyping tools to quickly scaffold the initial codebase and database schema. Bolt’s integrated environment made it easy to set up authentication, tables, and basic API endpoints for lessons, quizzes, and user progress.
As the project grew, we adopted a hybrid workflow:
- Export the codebase to our local machines for more in-depth debugging and development.
- Use preferred editors and run the app locally to troubleshoot issues more efficiently.
- Leverage Bolt’s GitHub integration to sync changes between the Bolt platform and our local repository.
- Push local updates to GitHub, then pull them back into Bolt to test and deploy.
This back-and-forth workflow lets us combine the best of both worlds—Bolt’s rapid cloud-based development and the flexibility of local debugging and version control. It also made it easier to collaborate, experiment with new features, and iterate quickly based on feedback.
## Challenges we ran into
Working with
TypeScriptandTSX: Before this project, my experience was limited to smallJavaScriptscripts. Diving into a strongly typed language and understanding the structure ofReactcomponents inTSXwas a steep learning curve. I had to quickly get comfortable with type annotations, interfaces, and debugging type errors.Adapting to Bolt’s database schema: The way tables, relationships, and policies are set up in Bolt was quite different from what I was used to, so I spent a lot of time reading documentation and experimenting to get things working as intended.
Asset management: I didn’t realise at first that Bolt allows users to upload assets directly. My initial approach—exporting the project, updating all asset paths locally, and re-importing—was tedious and required careful attention to detail.
Despite these hurdles, each challenge was a valuable learning experience and helped me grow as a developer.
## Accomplishments that we're proud of
Building a robust backend: I was able to design and implement a scalable backend using
Supabasethat is capable of handling user authentication, lesson and quiz management, and progress tracking. Seeing all these pieces come together in a way that could scale was a huge confidence boost.Shipping a working app as a beginner: As someone who had never worked with
TypeScriptor developed a full-fledged application before, making Dough-Jo work end-to-end felt like a milestone. For me, shipping this app as a true beginner is an accomplishment I’m genuinely proud of.
## What we learned
This project taught me that there’s no single “right” way to build something—sometimes you just have to dive in and figure things out as you go.
I learned to trust my instincts, experiment, and not be afraid to break things. Working with TypeScript and TSX for the first time was intimidating, but I realised that persistence and curiosity go a long way. Switching between Bolt’s cloud environment and my local machine, managing assets, and syncing code with GitHub all pushed me out of my comfort zone, but these challenges made the result even more rewarding.
Most importantly, I learned that you don’t have to be an expert to build something meaningful. With the right resources, a willingness to learn, and a bit of creativity, you can turn an idea into a working product—even if you’re starting from scratch.
## What's next for Dough-Jo
Dough-Jo started as a vision to make financial literacy as engaging as language learning apps like Duolingo. This first version is a functional prototype, but the foundation is there.
Looking ahead, I’d love to turn it into a truly polished product. Some features I’m excited to add include:
- A notification service to remind users to keep learning
- Home screen widgets
- Quick actions to make the app more addictive and effective
I initially planned to include these, but ran into limitations with Expo. If I were to rebuild the app, I’d consider using Flutter for more flexibility. Ultimately, I believe Dough-Jo has the potential to become a valuable tool for anyone looking to improve their financial skills.
Log in or sign up for Devpost to join the conversation.