A web-based page audit tool that analyzes URLs for SEO, accessibility, and code quality issues — with AI-powered fixes.
- Alt Text Audit — Finds images with missing/bad alt text, generates suggestions via Claude Vision
- Open Graph Tags — Checks for missing OG tags, suggests improvements
- Accessibility Scan — Checks landmarks, form labels, lang attribute, ARIA usage, and more
- PageSpeed Insights — Pulls scores and top failing audits from Google's API
- Meta Tag Audit — Validates title, description, viewport, charset, canonical
- Heading Hierarchy — Detects skipped levels, multiple h1s, empty headings
- Color Contrast — Parses inline styles and checks WCAG 2.1 contrast ratios
- AI Chat Sidebar — Ask follow-up questions about any audit finding (streaming responses)
- Framework: Next.js 15+ (App Router)
- Database: PostgreSQL (Neon for production, Docker for local dev)
- ORM: Prisma
- Auth: Auth.js v5 with Google OAuth
- AI: Anthropic Claude API
- Styling: Tailwind CSS 4
- Node.js 18+
- Docker Desktop (for local PostgreSQL)
- Google OAuth credentials (console.cloud.google.com)
- Anthropic API key (console.anthropic.com)
# 1. Clone and install
git clone <your-repo-url>
cd dejankify
npm install
# 2. Configure environment
cp .env.local.example .env.local
# Edit .env.local with your credentials
# 3. Start local database
docker compose up -d
# 4. Push schema to database
npm run db:push
# 5. Start dev server
npm run devOpen http://localhost:3000 and sign in with Google.
- Go to Google Cloud Console
- Create a new project (or select existing)
- Navigate to APIs & Services → Credentials
- Create an OAuth 2.0 Client ID (Web application)
- Add authorized redirect URI:
http://localhost:3000/api/auth/callback/google - Copy Client ID and Client Secret to
.env.local
- Create a free database at neon.tech
- Copy the connection string to
DATABASE_URLin.env.local - Run
npm run db:push
src/
├── actions/ # Server Actions (analyze, sessions, chat)
├── analyzers/ # Analysis modules (one per audit type)
├── app/ # Next.js App Router pages
│ ├── dashboard/ # Authenticated dashboard
│ └── api/auth/ # Auth.js API routes
├── components/
│ ├── analysis/ # Report display components
│ ├── layout/ # Shell, sidebar, chat panel
│ └── ui/ # Shared primitives
├── lib/ # Utilities (prisma, auth, claude, fetcher)
└── types/ # Shared TypeScript interfaces
- 15 analyses/day per user (configurable via
DAILY_ANALYSIS_LIMIT) - $2/day estimated API cost cap (configurable via
DAILY_COST_LIMIT_CENTS)
See DEPLOY.md for full Vercel + Neon deployment instructions.
MIT