Back to Discover

examprep-api

connector

realtorfico

Fetch real California Notary Public exam practice questions and grade answers in-chat.

View on GitHub
0 starsSynced Aug 9, 2026

Install to Claude Code

/plugin marketplace add realtorfico/examprep-api

README

examprep-api

Shared backend for examprep.softician.com (public) + examprep-admin.softician.com (admin). Cloudflare Worker + D1, no framework, no build step.

Setup (one-time, via Cloudflare dashboard — no local Wrangler on this machine)

  1. Workers & Pages > D1 > Create database examprep, run schema.sql in its Console tab.
  2. Paste the resulting database_id into wrangler.jsonc.
  3. Workers & Pages > Create > Workers > Import a repository (this repo) for git-connected deploy.
  4. Worker Settings > Variables & Secrets: TURNSTILE_SECRET, CF_ACCESS_TEAM_DOMAIN, CF_ACCESS_AUD.
  5. In each of the examprep / examprep-admin Pages projects: Settings > Bindings > add a Service Binding to this Worker (examprep-api), so their worker.js can call it same-origin without any public hostname on this Worker.

Tests

node --test test/progress-consistency.test.js — runs against an in-memory DB via Node's built-in node:sqlite (no wrangler/workerd needed, which matters since this repo can't run those locally on this machine). Currently just the progress-totals consistency check from the 2026-08-05 admin-vs-site counter bug; add more test files under test/ as needed.

Routes

Public (bearer token, minted by /redeem): /questions/next, /answer, /progress, /prefs. Admin (Cloudflare Access-gated): /console/codes, /console/codes/generate, /console/codes/revoke, /console/questions (+ create/update/delete/import), /console/stats.

See the architecture plan for the full design.

Rendered live from realtorfico/examprep-api's GitHub README — not stored, always reflects the source repo.

1 Install Method

NameDescriptionCategorySource
streamable-http remoteHosted streamable-http endpointmcp-serverhttps://examprep.softician.com/mcp

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.