1) Try checking your declining balance on your smartphone while standing in line for the checkout counter at the Pit. How many clicks does it take for you just to check your current balance?
2) For some reason, Tharun didn't get his $10 of printer money this semester, but he's taking classes where he's required to do a lot of printing. Sid, on the other hand, doesn't need his $10 printing money, and so is willing to let him use it. Now, Tharun lives all the way in Southside, and Sid stays in Genesee - Tharun is going to have to come all the way here just to get his card to print - isn't there a faster way?
3) Maxim is going out to the pit. His suitemate needs a coffee and would like him to buy it on his way back - but she needs her card with her and so she has to give him cash (even though she has enough declining). What a waste!
What it does
Our submission is the prototype of the entire vision. As a final product, this app would allow students to:
- check their current balance for various virtual money (university accounts DUO auth)
- send/receive money to/from other students
- see a list of recent transactions
- AVOID DOING 10 CLICKS ON AN ANCIENT WEBSITE WITH 2 REDUNDANT LAYERS OF AUTHENTICATION
- allow students to better manage their finances on campus! Currently, this prototype supports reviewing the current balances of its users, getting the transaction history (the API is working for this), basic auth, and sending money between people
How we built it
- Dart + Flutter --> to create a beautiful UI (at least for the time we had)
- Node.js + Express.js --> for the server side application
- Firebase --> Database
- GCP --> to host the server side application
- Authentication --> Auth0
Challenges we ran into
- Coming up with a solution to a meaningful problem that impacts students just like us
- Learning a new language (Dart) and framework (Flutter) from scratch
- Figuring how to split the work between 3 of us, and work asynchronously
- Understanding how to use technologies that we were less familiar with (GCP and Firebase)
- Determining the MVP to create within the limited timeframe of the hackathon
Accomplishments that we're proud of
- Like I said, creating a beautiful UI
- Learning how to make cross-platform apps using Flutter
- Learning how to set up a full server-side app and host it in the cloud
- Integrating different technologies to create a single product that solves a problem!
What we learned
- We don't need to use the fanciest tech to make an impact within the community
- Being consistent and not focusing on irrelevant features is key to ensure that we aren't filling out this form at 5 AM in the morning :'(
- It is very important to start with a single design that everyone is clear on so that there is no confusion and significant changes during the building process
- A whole lot of technologies, a new language, and a bunch of technical frameworks!
What's next for URWallet
- Speaking with the university administration to integrate this with the school's current system and completing all the features of the app so that we can release it as a finished product that serves the students of the University of Rochester!
IMPORTANT NOTE: We would like for our app to be considered for the general track, the 'Tech for Social Good' track, and the 'Best Use of Google Cloud' category