Sean Kraemer
← Projects

Android Weather Planner

Per-user city watchlists with live weather, an interactive map, and AI-generated UI theming. Every integration has a no-key demo fallback.

Java · Android SDK · SQLiteRepo

Origin
A seven-person software engineering course project (CS 427) where I was the Manager and largest committer. I built the interactive map feature and its tests, coordinated the team’s work, and later added demo fallbacks and tests for the public version.

What it does

City watchlists with live weather, an interactive map, and three AI-driven features. The most interesting is natural-language theming: type "sunset over lake michigan" and get back a validated, contrast-safe color scheme applied per user.

Getting that reliable meant writing contrast rules into the prompt and parsing defensively, because the model wraps its JSON in markdown fences no matter what you tell it.

Managing seven people

I ran weekly written standups, the peer evaluation process, and repo hygiene for seven people working in one Activity-heavy codebase. That coordination was as much of the work as the code, and the cross-cutting theming cleanup is the story I tell about why.

Preparing the public demo

For the public version I gave every external integration a deterministic no-key fallback, so a reviewer cloning the repo gets a working app with zero API keys. I also split the deterministic core out into JVM-testable units, so CI gives signal without booting an emulator.