Have you ever wished there was an easier way to manage your finances and budget while shopping? Well now there is with CitiTalks!

What it does

CitiTalks offers an easy to use speech recognition tool where users with Citi bank accounts can speak into their device and ask for information about different financial accounts such as current account balance, past transactions, and amount left in their budget. Through our tool, the user can also read out their shopping list like bread, milk, and eggs, and CitiTalks will let them know how much their list will cost, giving the user an easy way to plan out a budget.

How we built it

We built our back end primarily using Python, Flask, NLTK, SpaCy, and the API's. For our front end, we used HTML and CSS, and integrated the front and back end with Javascript.

Challenges we ran into

One issue we ran into was that's speech recognition tool takes some time to load the first time it is recognizing a phrase. Another challenge we faced was processing different key words in the user's question and figuring out what they were actually asking for. The access token for the Citi API was also a challenge because it expired every 30 minutes, so we had to periodically make calls to refresh our token. We also underestimated the difficulty of connecting the front and back end together.

Accomplishments that we're proud of

We are proud of accomplishing our goal and producing a working product in the given timeframe since there were many different components. We are also proud of overcoming the challenges we ran into and finding work arounds for these obstacles.

What we learned

This project taught us how to use the API's and all of their useful tools. We learned primarily how to use speech to text recognition tools and web scrape for results we want. We also learned how to use Python Flask a bit better, and gained more experience with front end development.

What's next for CitiTalks

Since CitiTalks deals with important financial information, we would want to add security measures when accessing a user's data. Next steps also include making CitiTalks more scalable, which also means improving our speech to text recognition since long commands might take awhile to process.

Built With

Share this project: