Documentation index

July 18, 2026 · View on GitHub

Pick the guide that matches your role — you don't need to read everything.

By role

RoleGuideYou will…
Admin / analystadmin-guide.mdDraw mapping lines on the canvas, sync to engine
Operatoroperator-guide.mdSet EGRESS_TARGET, webhook secrets, deploy to cloud
Developeradding-a-vendor.mdAdd a vendor in 6 files
Data engineerdownstream-pipeline.mdPilot → S3 → dbt → analytics
Data scientist / ML engineerphilanthropy-integration.mdConstituentEvent → PhilanthroPy propensity scoring
New adopteradoption-checklist.mdWeek-by-week pilot → production
Everyone (before prod)limitations-and-roadmap.mdScale, vendor tiers, honest v0.4 scope
Security / privacysecurity-and-privacy.mdFERPA-adjacent guidance, retention, rotation

Ecosystem and positioning

TopicGuide
UniSchema + PhilanthroPy stackecosystem.md
Canvas vs code deploy boundarycanvas-vs-code.md
vs Lambdas, Zapier, Fivetrancompetitive-positioning.md
AI agent + drift loopai-agent-loop.md

Vendor registry

Single source of truth for built-in vendors. Other docs link here instead of duplicating tier tables.

TierVendorsExpectation
Tier 1GiveCampus, CventProduction-tested fixtures; primary support
Tier 2iModulesReference implementation for new vendors
Tier 3Blackbaud, NPSP, Slate, Ellucian, CiviCRMCommunity — verify with your real payloads

Compatibility matrix

VendorTierWebhook routeNotes
GiveCampus1/webhooks/givecampusDonations
Cvent1/webhooks/cventRegistrations, events
iModules2/webhooks/imodulesReference vendor
Blackbaud RENXT3/webhooks/blackbaudGift webhooks — verify payload shape
Salesforce NPSP3/webhooks/npspDonation objects — verify field API names
Slate3/webhooks/slateForm webhooks — verify field API names
Ellucian3/webhooks/ellucianBootstrap mapper — verify with your payloads
CiviCRM3/webhooks/civicrmNonprofit CRM — contribution/participant/mailing; verify with your payloads
Other CRMsSee adding-a-vendor.md

Promote Tier 3 → Tier 1 by contributing real payload fixtures + tests — see adding-a-vendor.md.

Additional references

TopicGuide
Postgres backendpostgres.md
Load benchmarksbenchmarks.md
Schema semverschema-governance.md
Contributing../CONTRIBUTING.md

Deployment

GoalStart here
Pilot (SQLite, local egress)docker compose up
Production (Postgres, secrets enforced)docker-compose.prod.yml
Low-ops cloud (Fly / Railway)../deploy/README.md
S3 bucket only (Terraform)../deploy/terraform/README.md

Experimental tooling

ToolStatusGuide
LLM drift agentExperimental — human review required../agents/README.md

The drift agent proposes mapper patches; it does not auto-fix production.

Quick answers

Do we need Airflow? No for a pilot. S3 egress + PhilanthroPy or a notebook is enough.

Do we need Postgres? Not for a pilot. Use Postgres when you need 2+ instances — postgres.md.

Do we need PhilanthroPy? Optional for ingest-only pilots. Recommended for propensity/lapse scoring — philanthropy-integration.md.

Is there a hosted SaaS? No — UniSchema is self-host only.