All projects

GGoals

Savings goals, trips and planned purchases in one dashboard

Role
Personal project: product, back end and front end
Status
In production

The problem

I tracked savings goals and trip planning in different places, without knowing how much I needed to save each month to get there.

What I built

  • Goals with deposits and withdrawals, progress, automatic completion and a forecast based on the last 3 months (how much to save per month, week or day).
  • Trips with a checklist, researched options with price history and a linked goal that follows the estimated cost.
  • Ready-made flight search links (Skyscanner, Google Flights and Kayak) from the route entered.
  • Shopping list with target prices and price history.
  • Charts and simulator built with custom SVG, no chart library.
  • Light and dark theme, and an audit trail of value changes.

Architecture

  1. Angularcustom SVG charts
  2. Spring Boot APIgoal and trip rules
  3. PostgreSQL 16Flyway, audit log

Created by the Projects Generator and deployed on the systemsgf platform.

Technical decisions

Saved amount is always computed

The saved value is the sum of the transactions and is never stored, which prevents inconsistencies.

Effort on the product, not the setup

Born from the Projects Generator with login, CI and deployment ready.

Technologies

  • Java 21
  • Spring Boot 4
  • MyBatis
  • PostgreSQL 16
  • Angular 22
  • SVG

Outcome

I use GGoals to plan trips and bigger purchases, tracking what is left and how much to save each month.