UGC Reactions from Real Creators
Real creator library videos at $11 and images at $8. Custom production from $25/video with a $250 minimum. Commercial licensing included.
翻訳待ち
Turn any local-business niche into a scored prospect list with ready-to-send outreach — visibility audits, homepage redesign concepts, and booking links, generated for you.
翻訳待ち
マーケティングTypeScript · PLpgSQLGitHub @Viral-Ad-Mediaオンライン所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Next.js cockpit for Supabase business audits, campaign mockups and Calendly booking links. Outreach delivery is manual.
翻訳待ち
Loading the full README.
Read the full README ↗Multi-tenant SaaS that turns a local-business niche and location ("Dentists in Austin, TX") into a scored, sourced prospect list with drafted outreach, then builds a homepage redesign concept and a real Calendly booking link for the businesses you choose to pursue. Research runs automatically on an Anthropic-API worker; sending outreach always stays a manual, human step.
The app has two halves:
/ (/about, /pricing, /faq, /terms, /privacy): static pages that pitch the product./app/*, behind Clerk sign-in and the trial/access paywall: audits, campaigns, contacts, the email queue, referrals, the audit trail and settings. Platform operators also get /admin.All screenshots use fictional demo data (*.example domains), not real businesses.
Marketing home (/) | Audits (/app) — every niche + location request, with live status, counts and estimated spend |
New audit (/app/new) — queue a niche, location and target count | Audit detail (/app/audit/[id]) — engine summary plus each business's SEO, conversion, trust and opportunity scores, priority and CRM status |
Campaign (/app/campaigns/[id]) — redesign mockup and booking link status per selected business | Contacts (/app/contacts) — every audited business with a public email, across all audits |
Emails (/app/emails) — bulk outreach queue: copy drafts or open them in your own mail client; there is no send button | Audit trail (/app/audit-trail) — account activity with the cost of each engine run |
/app/new enqueues a run_audit job through vis_enqueue_job_guarded, which checks entitlement and reserves estimated credit.lib/engine/discover.ts) finds up to target_count candidate businesses with Claude + web search and fans out one audit_business job per candidate.lib/engine/auditBusiness.ts researches each site, scores it 1–5 on SEO, conversion, trust and opportunity, records only publicly visible contact details with their source URLs, and drafts an outreach email. When the last one finishes, the audit gets a templated summary and turns Ready.build_redesign job (a labelled concept mockup of their homepage) and a create_booking_link job (a single-use link from the account's connected Calendly).Jobs are woken by the app itself (lib/engine/dispatch.ts → POST /api/engine/run), with a daily Vercel cron as a backstop. Each completed job deducts its measured cost from the account's credit ledger.
Next.js 16 (App Router, proxy.ts), React 19, Tailwind CSS 4, Clerk for authentication, Neon PostgreSQL with row-level security on every tenant table, the Anthropic SDK for the engine, Stripe Checkout for access and credit packs, and Vitest + PGlite for tests.
Use Node.js 22.12 or newer. Run npm ci, copy .env.example to .env.local, fill in your own credentials, and run npm run dev. Never commit credentials. DATABASE_URL must use the application database's privileged server connection; it must never be exposed to a client. Database TLS certificates are verified; provide DATABASE_CA_CERT when your provider requires its CA. DATABASE_SSL=disable is only for a local database without TLS.
Run npm test, npm run typecheck, npm run build, and npm audit. CI runs these checks without live credentials. Database tests run the Neon schema (neon/001_visibility_schema.sql) in PGlite. They verify tenant isolation and the onboarding, trial, audit, campaign and worker contracts.
Production runs on Neon PostgreSQL, with authentication by Clerk. The schema is neon/001_visibility_schema.sql: it runs in one transaction, refuses an existing vis_* installation, and creates the application tables, the vis_users directory, the private Clerk identity map, membership policies, column grants, onboarding/trial functions and the audited queue functions. neon/002_rehearsal_checks.sql is a rolled-back authorization smoke test. See neon/README.md.
The original Supabase project was retired in October 2026 after its data was imported into Neon. Supabase Auth, Vault, pg_net and pg_cron are no longer used anywhere in the app. Roll back the app and database together from a tested Neon backup or branch, rather than dropping structures with active jobs.
This is the beginning of the README. Read the rest at the original. Read the full README ↗