A modern, full-stack SaaS platform providing AI-powered tools for image, video, audio, and text processing.
- Google OAuth Authentication via Supabase
- Beautiful, Responsive UI built with Next.js 14 and Tailwind CSS
- Featured Tools Section highlighting popular tools
- Tool Dashboard with organized grid layout
- 5 Main Tools with placeholder UIs:
- Face Swap
- Background Removal
- GIF Maker
- Mugshot Generator
- Poem Generator
- Protected Routes with middleware authentication
- Modern Component Library using shadcn/ui
- Python FastAPI backend integration
- Usage-based billing with Stripe
- Credits system
- File upload and processing
- Real-time processing status
- Download processed files
- Usage history and analytics
- Frontend: Next.js 14 (App Router), React, TypeScript
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Authentication: Supabase Auth (Google OAuth)
- Database: Supabase Postgres (future)
- Backend: Next.js API Routes → Python FastAPI (future)
- Deployment: Vercel (future)
See SETUP.md for detailed setup instructions.
-
Clone and Install
npm install
-
Configure Supabase
- Create a Supabase project
- Add credentials to
.env.local - Enable Google OAuth
- Configure redirect URLs
-
Run Development Server
npm run dev
├── app/
│ ├── (auth)/ # Authentication routes
│ ├── (dashboard)/ # Protected dashboard routes
│ ├── api/ # API routes (future)
│ └── page.tsx # Landing page
├── components/
│ ├── ui/ # shadcn/ui components
│ ├── Navbar.tsx # Navigation with auth
│ └── ToolCard.tsx # Tool card component
├── lib/
│ ├── supabase/ # Supabase client utilities
│ └── types.ts # TypeScript types
└── middleware.ts # Route protection
- Face Swap - Swap faces in photos with AI precision
- Background Removal - Remove backgrounds instantly
- GIF Maker - Create animated GIFs from videos/images
- Mugshot Generator - Generate mugshot-style photos
- Poem Generator - Create poems with AI language models
- Video Enhancer
- Image Upscaler
- Voice Cloner
- Text Summarizer
Note: All tools currently show placeholder UIs. Backend integration coming soon.
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
- Create a new page in
app/(dashboard)/tools/[tool-name]/page.tsx - Add the tool to the tools array in
app/(dashboard)/tools/page.tsx - Create an API route in
app/api/tools/[tool-name]/route.ts - Connect to your Python backend endpoint
User → Next.js (UI + Auth) → Supabase (Auth)
User → Next.js (UI + API Gateway) → Python FastAPI (ML Processing)
→ Supabase (Auth + DB)
→ Stripe (Payments)
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key- Push to GitHub
- Import project in Vercel
- Add environment variables
- Deploy!
Remember to update Supabase redirect URLs with your production domain.
This is a personal project. Feel free to fork and adapt for your own use.
MIT
For setup help, see SETUP.md.
Built with ❤️ using Next.js, Supabase, and shadcn/ui