尚未检测到更新。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.