Frame 06A api 2026

Spring Break Voting API

A Spring Boot API built to settle where my friends and I go for spring break

every vote, counted

The story

My friend group could not agree on a spring break destination, so I made everyone submit a ranked top three through an API instead. Java 21 and Spring Boot: register voters, add destinations, vote once per person (enforced), change your mind and resubmit, filter destinations by region. Runs on an EC2 box with in-memory storage for now. The entities are modeled so Postgres and JPA can drop in when it needs to persist.

What I learned

  1. 01One vote per person sounds trivial until you write it, and it is the only rule in the whole API that genuinely needed enforcing.
  2. 02Letting people resubmit mattered more than locking the vote down, because the arguing is the point and opinions moved all week.
  3. 03The entities are modeled for JPA and Postgres even though it runs in memory, so persistence is a swap later instead of a rewrite.
  4. 04Spring Boot is heavy for a group of friends picking a beach, and I used it anyway on purpose: I wanted the framework, not the shortcut.

Stack · as built

Frontend

  • Postman
  • REST

Backend

  • Java 21
  • Spring Boot 4
  • Maven

Infra

  • AWS EC2
  • In-Memory Storage
  • UUID IDs

Want the full story behind this one?