A comprehensive SEO campaign management and AI-powered content generation platform built with React, TypeScript, and Supabase.
- AI-Powered SEO Content Generation - Generate optimized content using Google's Gemini AI
- Campaign Management - Create, manage, and track SEO campaigns
- Calendar Integration - Schedule and visualize campaign timelines
- Real-time Results - Live content generation and optimization suggestions
- User Authentication - Secure login with email-based whitelist system
- User Management - Add/remove users from whitelist
- License Management - Create and manage user licenses
- Email Integration - Send welcome emails to new users
- System Monitoring - Debug tools and user activity tracking
- Frontend: React 18, TypeScript, Vite
- Styling: Tailwind CSS
- Authentication: Supabase Auth
- Database: Supabase PostgreSQL
- AI Integration: Google Gemini API
- Email Service: Resend API
- Deployment: Netlify
- Node.js 18+
- npm or yarn
- Supabase account
- Google Gemini API key
- Resend API key (for emails)
-
Clone the repository
git clone <your-repo-url> cd gemseo
-
Install dependencies
npm install
-
Environment Variables Create a
.envfile in the root directory:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key VITE_GEMINI_API_KEY=your_gemini_api_key VITE_RESEND_API_KEY=your_resend_api_key
-
Configure Whitelist Edit
config/whitelistedEmails.tsto add authorized users:export const WHITELISTED_EMAILS = [ 'user1@example.com', 'user2@example.com', // Add more emails here ] as const;
-
Start development server
npm run dev
-
Build for production
npm run build
-
Connect to Netlify
- Push your code to GitHub
- Connect your GitHub repo to Netlify
- Configure build settings:
- Build command:
npm run build - Publish directory:
dist
- Build command:
-
Set Environment Variables In Netlify dashboard, add these environment variables:
VITE_SUPABASE_URL VITE_SUPABASE_ANON_KEY VITE_GEMINI_API_KEY VITE_RESEND_API_KEY -
Deploy
- Netlify will automatically deploy on push to main branch
- Your app will be available at
https://your-app-name.netlify.app
-
Build the project
npm run build
-
Deploy to your hosting service Upload the
distfolder to your web server or hosting provider.
- Primary: Hardcoded whitelist in
config/whitelistedEmails.ts - Secondary: Supabase database (currently blocked by RLS policies)
- Fallback: Admin can add users via dashboard (adds to hardcoded list)
drpratichi@skids.health
dr.satish@greybrain.ai
dev@santaan.in
raghab.panda@santaan.in
Lnmishra84@gmail.com
satish@skids.health
Access the admin dashboard at /admin to:
- Add new whitelisted users
- Manage user licenses
- Send welcome emails
- Monitor system status
-
Authentication Fails
- Check if user email is in
config/whitelistedEmails.ts - Verify Supabase credentials in environment variables
- Check browser console for detailed error messages
- Check if user email is in
-
AI Content Generation Fails
- Verify Gemini API key is correct
- Check API quota limits
- Review network requests in browser dev tools
-
Email Sending Fails
- Verify Resend API key
- Check email configuration in admin dashboard
- Review server logs for email errors
Several test scripts are available:
test-complete-auth-flow.mjs- Test authentication flowtest-whitelist-config.mjs- Verify whitelist configurationtest-email.mjs- Test email functionality
| Variable | Description | Required |
|---|---|---|
| VITE_SUPABASE_URL | Supabase project URL | ✅ |
| VITE_SUPABASE_ANON_KEY | Supabase anonymous key | ✅ |
| VITE_GEMINI_API_KEY | Google Gemini API key | ✅ |
| VITE_RESEND_API_KEY | Resend email API key | ❌ |
- Authentication Fix: Resolved RLS policy blocking issues
- Enhanced Error Handling: Better feedback for authentication failures
- Admin Dashboard: Improved user management interface
- Email Integration: Welcome email system for new users
For issues and questions:
- Check the troubleshooting section above
- Review the test scripts for debugging
- Check browser console for detailed error messages
- Verify all environment variables are correctly set
This project is proprietary software. All rights reserved.
Built with ❤️ for GreyBrain SEO