top of page
  • Writer: Alexander Williamson
    Alexander Williamson
  • Sep 28, 2020
  • 2 min read

Updated: Feb 12, 2021

PayPulse - A Social Budgeting MEAN Stack Web App




Demo:

Summary:



PayPulse is a web app built using the MEAN stack (MongoDB, Express, Angular and Node.js) that aims to help users stay on track of their budget goals. I worked on the project from July 2020 - December 2020 in addition to taking classes and practicing for technical interviews.


I was inspired to start building PayPulse after I had been having a tough time trying to budget my own income using other budgeting applications. I thought it would be fun to create my own version! Building the app has also allowed me to greatly improve my full stack coding skills and further solidify the foundational knowledge I gained from taking a MEAN stack Specialization on Coursera prior to starting development.


I think the coolest part of the whole process was being able to work with the Plaid API. I used the /transactions route to pull real transactional data from linked banked accounts, and it was super cool to see these transactions show up in the UI that I created. The most challenging component, and probably where I gained to most new knowledge, was building out the backend. In the past, I had mainly used Firebase (a backend API) or consumed data from a backend someone else had built so it was very rewarding to build out all that important logic myself!


Now that I have finished up my work on this project, I've shifted my time to learning React through building another web app! I'm planning to get started on the development process soon so stay tuned for more info.

Some of the technologies/skills used:

  • Angular

  • TypeScript

  • Node.js

  • Express

  • MongoDB

  • D3

  • Plaid API

  • Angular Material

  • OAuth

  • Karma & Protractor

Some of my major contributions:

  • Created a MEAN stack web app for budget management, which utilized the Plaid API to connect to real bank account data

  • Implemented a Table for searching and sorting through paginated transactions, a Pie chart to visualize aggregate monthly budget, a Goals page for tracking and notifying goal progression and a Home page for viewing a total budgeting summary

  • Achieved a RESTful backend by using JWTs for stateless client-server requests and routing endpoints with CRUD methods

  • Incorporated test-driven development using Unit and E2E tests to reduce development time and increase code quality

  • Polished app by adding graceful error handling, optimizing the UI for different size screens and creating token refresh logic


Comments


Commenting on this post isn't available anymore. Contact the site owner for more info.

© 2020 by Alex Williamson

bottom of page