Inspiration

Looking for financial advice in the information age is an intimidating experience, especially for those starting out their fiscal journey. As busy college students, prioritizing our time is a top consideration when it comes to obligations outside of school and work. That being said, financial wellness and responsibility are crucial steps in ensuring stable and successful futures. On a whole, we have found it intimidating and exhausting to be inundated with information about how to plan for our futures. Enter Milestones, an app that guides you through each phase of life by providing the user with concrete financial landmarks and relevant goals to pursue as someone of their age range. We wanted to simplify the process for the average person (ourselves) and make relevant tools everyone can find useful in some way.

What it does

Milestones’ interface (not entirely currently implemented) serves as a personal finance hub, including, goal trackers, budgeting, and improving financial literacy through providing information about common financial features. Users are provided with a set of goals based on their current growth phase (Early Professional, Career Growth, Wealth Building, Pre-retirement), and can dynamically update and track their progress in the app. A future goal is to also support a streamline, intuitive, in-app budgeting feature for peak convenience. We decided to gamify the experience by rewarding users with badges for completed goals, to encourage user engagement and make financial topics more approachable.

How we built it

In terms of software development, the application is built in Dart with Flutter, an open-source framework for mobile development. Our app is specifically for Android as two of our members do not have Apple products making development for iOS unfeasible. In order to test and simulate the application, we used Android Studio and a Virtual Device Emulator. We used GitHub frequently in order to integrate our work.

All of the art featured within the application is original (including the home page gif). Tools utilized to create the art include Adobe Illustrator and Adobe Photoshop. Additionally, we used Figma to create wireframes during our initial planning process.

Challenges we ran into

As expected, time was the biggest obstacle our team faced, especially when taking into account our joint ambition. This meant we were forced to hardcode some data and could not implement every feature we wanted to, which although disappointing was inevitable. While all three of us have worked with Flutter before, interface design presented a large challenge to us. Integrating mock user data into the views was another challenging aspect of this project. Our home page was supposed to feature an additional animation of a figure walking. We wanted to visually signify the user’s forward progress towards new milestones. This animation was not feasible in the time given that we had to create the character, rig it, animate it, and export it, all without prior experience animating with Adobe After Effects.

Accomplishments that we're proud of

We are especially proud of the mostly polished interface we were able to complete over the weekend. As a team who values human computer interactions, we pride ourselves on providing users with an engaging and clean interface to streamline their experience. All (well, 99.9%) of the graphics were original content, created entirely over the past 35 hours. Arguably more important than any output we could have produced, was our growth as a team. This year showed a remarkable step forward in patience, listening, and cooperation all while enduring the pressure cooker of emotions that constitute a hackathon. In terms of technical accomplishments, we are proud of being able to have implemented our designs within Flutter. Not only did we implement the frontend, we partially implemented the model and view model structures of our application. We dynamically pass in some of our data between widgets, and this is a step that we could have omitted in light of simply hardcoding all of the data. We are all still newbies to Flutter, and so being able to achieve what we did within the allotted amount of time showed us how much we’ve grown in the last few months.

What we learned

We learned that there is never too much Redbull and that sleep is for the weak. In all seriousness, working on a project for 35 hours straight makes you realize things about yourself. How hard are you willing to work? How fast will you give up? How much do you actually like your friends? Thankfully the answers to those three questions for us were:

Very. We are in it for the long haul. A whole lot : )

What's next for Milestones

We have a lot of ideas for expansion, these are just to name a few (in no particular order)…

  1. Creating a Login Page and Database Management System We would like to implement a sign up and log in page, in order to collect a user’s information. The information that a user provides initially paired with information they input into the app all would be stored within a database.

  2. Adding Security Measures to Protect our Users Given the sensitivity of financial information, in the future we would carefully implement safeguards for our user’s online information. We would employ the use of encryption and other methods to prevent any malicious access or breaches.

  3. Creating the Budget Screen Despite wanting to complete all of the screens that Milestones has, it was simply impossible given the time constraint. Specifically, the budget page did not make it to the minimum viable product.

  4. Finishing the home page animation In the future, we would love to create the walking animation on the homepage gif as it is the main visual of our homepage. It looks nice as it exists now, but the animation lacks meaning and purpose without being completed.

  5. Badge Labels In the future, we would like to expand upon the badge gamification system more. To start, we would like to add labels or pop-ups when the user hovers over the badges to display the contents of their accomplishment

Built With

Share this project:

Updates