A sophisticated Content Management System with subdomain publishing and LLM benchmark capabilities. This platform allows authenticated users to create and manage HTML content, which is then published to the public on unique, dynamically generated subdomains.
- Authentication System: Login, signup, and secure session management
- Content Management: Rich text editor with HTML sanitization
- Database: Complete schema with Row Level Security (RLS) policies
- Voting System: Like/unlike functionality for published content
- Subdomain Support: Dynamic content rendering on custom subdomains
- Navigation: Responsive header with authentication status
- Error Handling: Comprehensive error pages and user feedback
You need to configure your Supabase project credentials to get started.
npm run check-setupCreate .env.local in the project root:
# Supabase Configuration (get from https://app.supabase.com/)
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
# Domain Configuration
NEXT_PUBLIC_ROOT_DOMAIN=localhost:3000 # For development- Go to your Supabase project dashboard
- Open SQL Editor
- Copy and run the content from
supabase/migrations/001_initial_schema.sql
npm run dev- 📖 Setup Guide - Comprehensive setup instructions
- 🗂️ Product Guide - Full project architecture and features
- 🗄️ Database Schema - SQL migration file
- Authentication: Visit
/loginand/signup - Content Creation: Create entries in
/dashboard - Voting: Test like/unlike on published content
- Subdomains: Configure DNS and test custom subdomains
- Frontend: Next.js 15 with TypeScript and Tailwind CSS
- Backend: Supabase (PostgreSQL, Auth, RLS)
- Editor: TipTap rich text editor with HTML sanitization
- Deployment: Vercel with wildcard subdomain support
- Row Level Security (RLS) policies
- HTML content sanitization (client and server-side)
- CSRF protection with server actions
- JWT-based authentication
The application is ready for deployment to Vercel. See the Setup Guide for production configuration instructions.
Need Help? Check the Setup Guide or run npm run check-setup to diagnose issues.