Skip to content

riteshbonthalakoti/RoastLab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

119 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RoastLab

AI-powered website auditor that roasts your design, copy, UX, and everything else β€” with zero mercy.


Live Demo Next.js TypeScript Vercel License


  β—‰ ─────── β—‰ ─────── β—‰
  β”‚   Enter URL        β”‚
  β”‚   Wait 60 seconds  β”‚
  β”‚   Get destroyed    β”‚
  β—‰ ─────── β—‰ ─────── β—‰

πŸ”₯ What is RoastLab?

RoastLab is a brutally honest AI website auditor. Drop any URL, and our AI (powered by GPT-4V + Gemini fallback) will analyze it across 9 dimensions β€” roasting every bad design decision, weak CTA, accessibility crime, and SEO disaster it finds.

"whoever did this ate glue and called it UX" β€” ROASTBOT 9000


✨ Features

πŸ€– AI Analysis

  • 9 audit dimensions β€” Visual Design, Copywriting, CTA, UX Flow, Accessibility, Trust Signals, Mobile, Performance, SEO
  • 5-provider AI fallback β€” OpenRouter β†’ Groq β†’ Gemini
  • Real-time SSE streaming β€” results appear as they're analyzed
  • Deep crawl β€” Jina AI + raw HTML extraction + subpage crawl for premium

πŸ’… User Experience

  • Dark theme β€” Linear/Vercel-inspired design
  • Gen Z energy β€” savage roasts with Telugu/Hindi meme stickers
  • Clickable screenshots β€” full-size crime evidence
  • PDF export β€” branded audit report
  • Auto-email β€” full report to inbox via Resend

πŸ” Auth & Accounts

  • Clerk auth β€” Google OAuth + email/password
  • Forgot password β€” custom 3-step reset flow
  • Profile management β€” photo upload + real-time name editing
  • Session gate β€” 1 free audit, then sign-in required

πŸ—„οΈ Data & Admin

  • Neon Postgres β€” all audits persisted
  • Dashboard β€” past audits with scores + avg
  • Admin panel β€” full audit log + global stats
  • Stripe payments β€” Pro + Full plans

πŸš€ Tech Stack

Layer Tech
Framework Next.js 15 App Router
Language TypeScript
Styling Tailwind CSS v4 + inline styles
Animation motion/react
Auth Clerk v7
Database Neon Postgres (serverless)
AI OpenRouter (GPT-4V) + Groq + Gemini
Email Resend
Payments Stripe
Screenshot microlink.io
Crawling Jina AI Reader
Deployment Vercel

πŸ“Š Audit Dimensions

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  FREE (3)              β”‚  FULL (9)                      β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  πŸ‘  Visual Design     β”‚  πŸŒ€ UX Flow                    β”‚
β”‚  ✍️  Copywriting       β”‚  β™Ώ  Accessibility              β”‚
β”‚  🎯  CTA               β”‚  πŸ”’ Trust Signals              β”‚
β”‚                        β”‚  πŸ“± Mobile Experience          β”‚
β”‚                        β”‚  ⚑  Performance               β”‚
β”‚                        β”‚  πŸ” SEO                        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

⚑ Scoring System

 85+ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ Elite β€” genuinely exceptional
 75+ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘ Good β€” someone was awake
 65+ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘ Decent β€” moments of competence
 50+ β–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ Average β€” participation trophy
 35+ β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ Bad β€” publicly tried and failed
 20+ β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ Disaster β€” something went wrong
  0+ β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ Crime scene β€” designers quit

πŸ› οΈ Local Development

# Clone
git clone https://github.com/ritesh-1918/roastlab.git
cd roastlab

# Install
npm install --legacy-peer-deps

# Set environment variables
cp .env.example .env.local
# Fill in your keys

# Run
npm run dev

Open http://localhost:3000


πŸ”§ Environment Variables

# AI Providers
OPENROUTER_KEY_1=sk-or-...
GROQ_KEY_1=gsk_...
GEMINI_API_KEY=...

# Auth (Clerk β€” dashboard.clerk.com)
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_...
CLERK_SECRET_KEY=sk_...

# Database (Neon Postgres)
DATABASE_URL=postgresql://...

# Email (Resend β€” resend.com)
RESEND_API_KEY=re_...

# Payments (Stripe)
STRIPE_SECRET_KEY=sk_test_...
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_...

# Admin access (comma-separated emails)
ADMIN_EMAILS=you@example.com

πŸ“ Project Structure

roastlab/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ analyze/          # Audit results page (SSE stream)
β”‚   β”œβ”€β”€ admin/            # Admin dashboard
β”‚   β”œβ”€β”€ dashboard/        # User dashboard
β”‚   β”‚   β”œβ”€β”€ page.tsx      # Overview + stats
β”‚   β”‚   β”œβ”€β”€ reports/      # Audit history
β”‚   β”‚   β”œβ”€β”€ profile/      # Real-time profile editing
β”‚   β”‚   └── billing/      # Subscription management
β”‚   β”œβ”€β”€ forgot-password/  # 3-step password reset
β”‚   └── api/
β”‚       β”œβ”€β”€ analyze/      # SSE audit endpoint
β”‚       β”œβ”€β”€ audits/       # Audit history API
β”‚       └── webhooks/     # Stripe + Resend webhooks
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ ai/               # 5-provider fallback engine
β”‚   β”œβ”€β”€ db.ts             # Neon Postgres
β”‚   β”œβ”€β”€ email.ts          # Resend branded templates
β”‚   β”œβ”€β”€ screenshot.ts     # Jina + microlink
β”‚   └── generate-pdf.ts   # PDF report
└── components/
    └── landing/          # Homepage sections

🌢️ Meme Integration

Contextual Indian memes on every roast β€” Telugu/Hindi flavor:

Score Meme Caption
75+ Drake (approving) "bhai tera site actually fire hai"
60-74 Hide the Pain Harold "nahi theek nahi hai"
40-59 Disaster Girl "machi ee design chusav aa πŸ’€"
25-39 This Is Fine "yaar ye kya kar diya tune"
<25 Facepalm "arey baap re ee site 😭"

πŸ“§ Email System (Resend)

Auto-sends branded dark-theme HTML report after every audit:

βœ‰οΈ Audit Report Email
β”œβ”€β”€ Overall score + verdict
β”œβ”€β”€ Each dimension with score + savage summary
β”œβ”€β”€ "View Full Report" CTA back to site
└── Re-roast CTA

Set up webhook at https://your-domain/api/webhooks/resend in Resend Dashboard β†’ Webhooks for delivery tracking.


πŸ‘€ Author

Ritesh Bonthalakoti β€” @ritesh-1918


Live Demo Β· Report Bug Β· Request Feature

Made with πŸ”₯ in India

About

AI-powered website roaster β€” 9-dimension audit, Gen Z vibes, desi memes, zero mercy πŸ”₯

Topics

Resources

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages