Agentic donor research web app
Travis designed, built, and deployed a production AI web app that gives a philanthropy team structured donor briefs through a plain-language browser interface, with no developer tools required.
What we did
The philanthropy team needed faster, more consistent prospect research. The existing process was manual and time-intensive. Travis built a production web app that puts campaign-grade prospect intelligence in the hands of non-technical fundraisers through a simple browser login. Staff sign in with their work account and ask about a prospect in plain language. The app runs a live research loop, delegating independent research tracks, covering charitable filings, news, awards, and affiliations, to parallel AI sub-agents using the Anthropic SDK. It streams a structured donor brief to the browser, downloadable as PDF, Word, or Markdown.
The build covered the full stack. The frontend is React 18, TypeScript, Vite, and Tailwind, with Microsoft single sign-on restricted to authorized organizational accounts. The backend is Python FastAPI with SQLAlchemy and Alembic, orchestrating a Claude tool loop with sub-agent delegation for parallel research. The cloud infrastructure runs on Azure Static Web Apps and Container Apps, with Azure SQL hosted in Canada Central for data residency, and Key Vault with managed-identity secrets and RBAC. Security covers JWT-based auth, prompt-injection protections, and a documented threat model with donor-privacy discipline built in. The delivery included 140 or more automated tests across pytest and Vitest, and GitHub Actions CI/CD that builds and deploys on every merge.
What it enabled
The app turned a manual internal research process into a hosted service anyone on the team can use. Fundraisers get a structured brief in a fraction of the time, without touching a spreadsheet or developer tool. This reduces tasks that previously took weeks into a 20 minute run.