Tools we use
The stack, named.
We're built on third-party services. Here's who, and what for.
Hosting + delivery
Hosts receipts.report and ops.receipts.report. Vercel Pro on Fluid Compute. CDN, edge functions, automatic preview deploys.
DNS for receipts.report and wildcard subdomain provisioning for the future Reporter platform.
Bare-metal Postgres host for our civic data graph (the eight federal data sources live on a dedicated box in Vint Hill, VA).
Identity + payments
Communication
Transactional + newsletter email — sign-up confirmations, delta alerts, the bi-weekly newsletter, the custom briefings.
Observability
Product analytics and error reporting. Anonymous page views + feature interactions. No retargeting, no ad networks, no third-party tracking.
Reasoning
Third-party LLM providers
The agent reasons across our data graph using third-party large-language-model infrastructure. We won’t name the specific provider here — model selection is an ongoing engineering decision, and we may route different requests to different providers to fit the cost envelope without changing the user-facing experience.
Every agent answer cites primary-source rows. The reasoning layer is replaceable; the citation contract is not.
Open-source we lean on
The platform and operator app are both Next.js apps.
Postgres 17 powers the civic data graph and (eventually) the app-state database.
Schema and queries for both databases.
Last updated 2026-05-21PrivacyData integrity
