Oracle3
Open-source trading engine and MCP server for prediction markets. Fee-aware no-arbitrage trading across related contracts, live on Kalshi, Polymarket and Solana or on paper.
Indianapolis-area homes where the seller pays concessions. See what that money does as a buydown compared with a price cut.
FinanceTypeScript · PLpgSQLGitHub @dillonbaker-rateOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
A public, mobile-first map of greater-Indianapolis listings where the seller pays concessions. For each
listing, buyers see what that money does as a temporary buydown (1-0, 2-1, 3-2-1), a permanent buydown,
or a closing cost credit, compared with a price cut of the same amount.
Stack: Next.js 15 (App Router) · TypeScript · Tailwind v4 · Leaflet · Supabase (Postgres, Auth, Storage) · Zod · Vercel.Read the full README ↗A public, mobile-first map of greater-Indianapolis listings where the seller pays concessions. For each listing, buyers see what that money does as a temporary buydown (1-0, 2-1, 3-2-1), a permanent buydown, or a closing cost credit, compared with a price cut of the same amount.
Stack: Next.js 15 (App Router) · TypeScript · Tailwind v4 · Leaflet · Supabase (Postgres, Auth, Storage) · Zod · Vercel.
npm install
npm run dev # http://localhost:3000
npm test # payment-engine + PMMS parser tests
With no Supabase env vars the app runs in demo mode: the map and listing pages use the 12 sample listings and the 6.25% sample rate, the lender form validates but doesn't store, and agent screens explain that setup is needed.
supabase/migrations/0001_init.sql, then supabase/seed.sql (sample listings + rate).https://<your-domain>/auth/callback (and http://localhost:3000/auth/callback) to Redirect URLs..env.local (see .env.example) and into Vercel.Remove the demo data later with delete from listings where is_sample;.
Every lead is saved, then emailed to LEAD_NOTIFY_TO through Resend (src/lib/lead-email.ts) with the
quiz answers and consent record. Reply-To is the buyer, so replying answers them directly. With no
RESEND_API_KEY the email is skipped; the lead is still saved.
Admins (emails in ADMIN_EMAILS) enter Rate's 30-year fixed Conventional, FHA and VA rates at
/agent/rates. They're used until midnight Indianapolis time. On any day without an entry the site falls
back to the latest Freddie Mac PMMS weekly average, labeled a sample rate. In local demo mode anyone on
localhost can enter rates and they're saved to .data/daily-rates.json.
Import the GitHub repo in Vercel, add the env vars from .env.example, deploy. vercel.json schedules
/api/cron/rate every Thursday at 18:00 UTC to pull the latest Freddie Mac PMMS 30-year rate.
| Path | What |
|---|---|
src/lib/buydown.ts | Payment engine (port of the prototype's calc()), tested in buydown.test.ts |
src/content/disclosures.ts | All compliance copy (disclosures, TCPA consent, footer). Edit here only. |
src/content/program-rules.ts | Loan program rules from Rate's official Buydown & IPC Calculator: concession limits, MI/MIP, FHA UFMIP, VA funding fee, 4%-of-loan closing-cost estimate |
src/lib/rate-calc-parity.test.ts | Checks the engine against Rate's calculator formulas across 96 scenarios |
src/components/map/ | Map screen: Leaflet wrapper, bottom sheet, filters, hero |
src/components/listing/ | Listing page, option cards, gallery |
src/content/lender-quiz.ts | "Talk to a lender" quiz questions and follow-ups (edit here) |
src/components/lender/ | The quiz at /talk-to-a-lender?listing=<id>[&topic=points] |
src/components/agent/ | Posting wizard, photo grid (dnd-kit), dashboard, login |
src/app/api/ | leads, listings, agent, geocode, cron/rate |
supabase/ | Schema, RLS policies, storage bucket, seed |
Search the code for COMPLIANCE:. Open items:
src/content/disclosures.ts.src/components/ui/EhoLogo.tsx is drawn to match HUD's mark; confirm or swap in the official file.NEXT_PUBLIC_MAPTILER_KEY or NEXT_PUBLIC_TILE_URL).RESEND_API_KEY, LEAD_NOTIFY_TO and a verified LEAD_NOTIFY_FROM (see .env.example).