
A production-ready graphic design SaaS platform with an intuitive drag-and-drop editor, AI-powered features, and complete subscription management. Built with Next.js 14, Fabric.js canvas engine, Replicate AI, and Stripe payments.
New to this project? Follow our step-by-step setup guide:
Start here: 00-PREREQUISITES.md
Estimated setup time: ~90 minutes
Frontend: Next.js 14, React 18, TypeScript, TailwindCSS, Shadcn UI, Fabric.js
Backend: Hono.js, Drizzle ORM, Neon PostgreSQL, Auth.js
AI & Media: Replicate AI, Unsplash, UploadThing
Payments: Stripe
State: Zustand, TanStack Query
Before starting, you need: - Node.js (v18+) or Bun - Git - Free accounts for: Neon, UploadThing, Replicate, Unsplash, Stripe, Google, GitHub
👉 See Prerequisites Guide for details
Follow these guides in order:
Need help? Check Troubleshooting Guide
# Install dependencies
bun install
# Setup database
bun run db:generate
bun run db:migrate
# Start development
bun dev
# Open database GUI
bun run db:studio
Full command reference: See Installation Guide
Create a .env file with these variables:
DATABASE_URL=
AUTH_SECRET=
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_UNSPLASH_ACCESS_KEY=
UPLOADTHING_SECRET=
UPLOADTHING_APP_ID=
UPLOADTHING_TOKEN=
REPLICATE_API_TOKEN=
STRIPE_SECRET_KEY=
STRIPE_PRICE_ID=
STRIPE_WEBHOOK_SECRET=
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
Detailed guide: Environment Variables Reference
Unlock with subscription: - ✨ Unlimited projects - 🎨 Premium templates - 🤖 Unlimited AI generations - 📤 High-resolution exports - 💾 Priority support
Course: YouTube/Original Tutorial (18-hour course)
Creator: Code With Antonio
Deployment: Vercel
UI Components: Shadcn
This project is based on the tutorial by Antonio Erdeljac.
If you found this project helpful, please give it a star!
Need help? - Check Documentation - Review Troubleshooting - Create an issue on GitHub
Ready to start? → Begin with Prerequisites Guide 🚀
$ claude mcp add canva-clone \
-- python -m otcore.mcp_server <graph>