Skip to content

Repository files navigation

VeriWire

VeriWire is a collaborative misinformation resolution platform with room-based investigation, bounded agent research, weighted voting, and clarity card output.

Local-first setup (no Docker)

  1. Copy env template:
cp .env.example .env.local
  1. Configure these values in .env.local:
  • DATABASE_URL (Supabase Postgres URI, or local Postgres at 127.0.0.1:5432)
  • NEXTAUTH_SECRET
  • NEXTAUTH_URL (usually http://localhost:3000)
  • Set either OAuth/email credentials, or use DEMO_BYPASS_AUTH=true for local demo mode.
  1. Install and prepare database:
pnpm install
pnpm prisma generate
pnpm prisma migrate deploy
pnpm prisma db seed

If you previously bootstrapped the DB with prisma db push (no migrations), mark the baseline as applied first:

pnpm prisma migrate resolve --applied 20260419000000_init
  1. Run the app:
pnpm dev
  1. Open:

Demo mode

For quick local testing:

  • Set DEMO_BYPASS_AUTH=true
  • Seed deterministic rooms:
curl -X POST -sS http://localhost:3000/api/seed

Expected seeded rooms:

  • VWRM0001
  • VWRM0002
  • VWRM0003

Stack

  • Frontend: Next.js 14, App Router, TypeScript, Tailwind
  • Persistence: Prisma + Postgres (Supabase recommended)
  • Auth: NextAuth (GitHub OAuth + email)
  • AI: Gemini + bounded agent pipeline
  • Realtime: SSE room stream

Local production run (no Docker)

pnpm build
pnpm start

Then verify:

curl -sS http://localhost:3000/api/health
pnpm smoke

If app is not running on localhost:3000:

SMOKE_BASE_URL="https://your-domain" pnpm smoke

Notes

  • Agent run route /api/rooms/[roomId]/agent/run is internal-secret gated.
  • With GEMINI_API_KEY, agent web retrieval uses Gemini grounding search only.
  • Room stream emits room.patch snapshots including message updates.
  • REDIS_URL is optional. If unavailable, local in-memory fallback is used for rate limits.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages