尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Know your number before you make the offer. Screenshot any Facebook Marketplace listing or Copart lot — Lowballer pulls live comps, prices the repairs, and hands you the exact lowball offer or max bid to make.
Three modes: Car (market value − repairs = your offer) · Any item (eBay sold comps → flip profit) · Copart/Salvage (rebuild cost → your max bid).
npm install
cp .env.example .env.local
ANTHROPIC_API_KEY — from https://console.anthropic.com (powers all appraisals)STRIPE_SECRET_KEY + STRIPE_PRICE_ID — create a recurring $30/month price in https://dashboard.stripe.com, use test keys firstSTRIPE_WEBHOOK_SECRET — see Stripe webhook (dev) belowAPP_SECRET — any long random string (openssl rand -hex 32)DATABASE_URL — a Postgres connection string (Neon, Railway, or Vercel Postgres free tiers all work). Also copy it into a plain .env file (Prisma CLI's convention, separate from Next's .env.local) so npx prisma migrate dev works without manually passing it.RESEND_API_KEY + EMAIL_FROM — optional in dev. Without a key, magic-sign-in links print to the server console instead of emailing, so local sign-in still works.npx prisma migrate dev --name init
npm run dev
Open http://localhost:3000. There's no free tier: every non-Pro appraisal runs, shows a short preview, and unlocks for $5 (one-time Stripe Checkout). Pro ($30/mo) gets full results.Subscription status (new subscriptions, cancellations, failed payments) is synced by app/api/stripe/webhook/route.js. To exercise it locally:
stripe listen --forward-to localhost:3000/api/stripe/webhook
This prints a whsec_... value — put it in STRIPE_WEBHOOK_SECRET. Then, in another terminal:
stripe trigger checkout.session.completed
stripe trigger customer.subscription.deleted
In production, add the endpoint in the Stripe dashboard (Developers → Webhooks) pointed at https://<your-domain>/api/stripe/webhook, subscribed to checkout.session.completed, customer.subscription.updated, customer.subscription.deleted, and invoice.payment_failed — then put that endpoint's own signing secret in STRIPE_WEBHOOK_SECRET on the host.
Easiest path is Vercel: push this repo to GitHub, import it at https://vercel.com, add the four env vars (set NEXT_PUBLIC_BASE_URL to your live URL), deploy, then point the lowballer.org domain at it. Switch Stripe to live keys when ready.
This repo ships with a CLAUDE.md so Claude Code understands the architecture immediately.
npm install -g @anthropic-ai/claude-code
cd lowballer
claude
Then just describe what you want: "add a Stripe webhook for cancellations", "add a history page of past appraisals", "make the hero animate on load". Docs: https://docs.claude.com/en/docs/claude-code/overview
app/api/stripe/webhook/route.js)BUILD_SPEC.md Phase 2)/api/appraise to cap your Anthropic API spendlib/rateLimit.js)lib/vehicleAnalysis.js.LINK_SCAN_MODE=all, non-Pro within daily caps): the listing is loaded via ScrapeCreators, then prefilled like a screenshot import. Set SCRAPECREATORS_API_KEY, and LINK_SCAN_MODE / LINK_SCAN_TESTERS to control who sees it — see lib/listingFetch.js.app/api/appraise, which calls Claude (claude-sonnet-4-6) with the web search tool and returns parsed JSON.lib/lockedResults.js) and only a teaser is returned; /api/unlock starts a $5 Stripe Checkout and the webhook / redirect marks the result paid. The paid details never reach the browser before payment.app/api/stripe/webhook/route.js) syncing subscription status onto your account; app/api/checkout/verify is just a fast-path UI nudge, not the real source of truth.