Annie Rome

Don’t read a portfolio — talk to one.

CS · Psychology · AI

Scroll

About

Two lenses, one thread: how software shapes people — and how people shape software.

My degree is a double major in computer science and psychology, and both drive how I approach work. CS gave me the foundation — algorithms, systems, how to build. Psychology gave me the other half — how people interpret, react to, and actually use the things we make. That's exactly where AI products either land with users or quietly miss.

I haven't been in the seat at a company full-time yet. What I do have is a distinctive combination of skills, a stack of personal projects I can walk through in detail, and a genuine itch to be in the middle of how AI actually gets built and shipped.

Portrait

Work

Things I have shipped and am currently working on.

A working portfolio: products built for myself, deployments for paying clients, and academic work I got to chase for its own sake.

AI · LLM-maintained knowledge base + chatbot

ABrain

A personal knowledge base maintained by an AI agent — and the live backend for the chatbot on this site.

  • Four core operationsIngest, Query, Lint, Maintain — each a directed agent pass that reads the current wiki state before writing, keeping the knowledge graph internally consistent as it grows.
  • Markdown-native storage readable directly in Obsidian.No database, no vendor lock-in — every page is a human-editable .md file with YAML frontmatter and wikilinks, fully versioned in git.
  • Powers the chatbot on this site.The wiki is pulled in as a git submodule, sanitized at build time (names filtered, private pages excluded), bundled with a hand-authored extras file, and streamed to visitors via Claude Haiku 4.5 with prompt caching.
  • Index and change log updated on every runthe system always knows what it knows, when it learned it, and what changed. Full history lives in git.
Claude (Anthropic)MarkdownObsidianYAMLGitNext.jsVercel

Agency · equestrian web design

Stride Edge

A specialized web design and development agency built exclusively for the equestrian industry.

  • Custom design tailored to each client's brandno templates — with a typographic and visual system tuned for the equestrian audience rather than generic SaaS.
  • Mobile-first responsive builds with image optimization for media-heavy horse photography and video, so sales pages and program pages load fast on phones at the barn.
  • Real-time analytics and SEO baked in from launchclients see traffic, search performance, and audience insights without bolting on third-party dashboards after the fact.
  • Optional Social Sync integration for live Instagram feeds, so the team posts once and the site updates itself — no CMS babysitting, no manual photo uploads.
Next.jsReactTailwindVercelSocial Sync API

SaaS platform · multi-tenant

Social Sync

A multi-tenant API platform that connects Instagram Business accounts and serves live feed data to any client site.

  • Two Meta connection pathsfull Facebook Login (with Page insights) and Instagram-only Login (no FB Page required) — with automatic short- to long-lived token exchange on connect and a daily cron job that refreshes any token within 7 days of expiry.
  • Access tokens encrypted at rest with AES-256-GCM (PBKDF2 100K-iteration key derivation, random IV + salt per record). The data-access layer encrypts transparently, so tokens never exist in plaintext above the DB boundary.
  • Distributed rate limiting and cache pre-warming on Upstash Redis, with an in-memory fallback for local development. A 30-minute cron pre-warms media and insights so public feed reads stay hot under burst traffic.
  • Role-based access control (Admin / Client) with server-side sessions, OAuth state CSRF protection, timing-safe API key comparison, per-client CORS allowlists (no wildcards), and Zod-validated request schemas at every boundary — production-grade security posture, end-to-end.
Next.jsPrismaPostgreSQL (Supabase)Upstash RedisMeta Graph APIZodAES-256-GCMJest