Inspiration
My inspiration for this app comes from the common struggle people face with impulsive shopping and the difficulty of turning good intentions into consistent habits. I wanted to create a mobile/web app that intervenes at the right moment, helping users reflect before purchasing through features like inventory tracking, budgeting and impulse reflection. Beyond personal financial control, the app is also inspired by concerns about overconsumption and environmental harm, as it encourages responsible consumption and supports UN Sustainable Development Goal 12.
What it does
This project is a mobile application designed to help users reduce impulsive shopping by turning intention into action. Instead of only raising awareness, the app provides practical tools that support mindful purchasing decisions in real time. The app includes a central dashboard that allows users to monitor their shopping behaviour and access different features based on their needs. It helps users keep track of what they already own, reflect on the reasons behind their purchases and manage their spending within self-defined limits. Through visual feedback such as charts, progress indicators and streak-based motivation, users are encouraged to reflect on their habits, set realistic goals and stay accountable over time. By making information easily accessible at the moment of decision-making, the app helps users avoid unnecessary purchases, reduce overconsumption and develop healthier financial and consumption habits.
How we built it
I developed my app using Visual Studio Code on Windows because it is lightweight, customizable, and integrates well with Flutter. The app is built using Flutter and Dart, which I chose after research because they are beginner-friendly and allow me to create a single, responsive app that works across multiple platforms with a modern UI. For version control, I use Git and GitHub to track changes, manage different versions of my code, and safely back up my work. My app uses Firebase Authentication for secure user sign-in and Cloud Firestore for real-time data storage, as Firebase integrates smoothly with Flutter. I tested the web version of my app on Google Chrome and Microsoft Edge to ensure performance and compatibility.
Challenges we ran into
Out of the many problems I faced while making the app, one was making sure that the data in the database updated correctly in real time on the budget and inventory pages. I fixed this by changing how the data was called and displayed so the calculations and visuals updated automatically. Another challenge was keeping the interface simple for new users while still showing all the important information. I found that the technical parts, like setting up npm, installing packages and extensions, using GitHub for version control and managing the database, were harder to figure out than actually writing the code, since I learned the coding language easily. Solving these problems helped me understand how all the parts of the app work together and made it more reliable and user friendly.
What I learned
During development, I learnt a lot about designing an app that is both functional and user-friendly. Since this was my first time making a full app, it gave me a taste of how a real app is developed, including planning, testing and considering things like data storage, user privacy, version control systems and usability. I also improved my technical skills with databases, real-time updates, visual features like charts and progress bars and using version control. On a personal level, I developed problem-solving, time management, and how to respond to feedback. This experience will help me in future projects by giving me a better understanding of how to plan, build and improve digital solutions.
What's next for OctoTrack
While my app meets the MVP requirements, there are several improvements I would like to make in the future. I could add custom notifications for users when they are close to overspending, save impulse goals to the database to track progress over time and include more detailed visual reports, such as monthly spending trends. I would also like to expand the streaks feature, adding badges or a collection of coins to motivate users. Additionally, I would improve the design by making the UI more animated and visually appealing, and include more customisation and accesibility options so users can personalise the app to their preferences. I would also make a separate help page to explain more clearly the app’s purpose and vision.
Log in or sign up for Devpost to join the conversation.