ShopShot is an AI-powered video generation platform designed for e-commerce businesses. Create stunning product videos, ad videos, and marketing content in minutes with just a few clicks.
- Product Video Generator - Transform product images into engaging videos
- E-commerce Video Ads - Create TikTok Shop, Amazon, and e-commerce platform videos
- AI Avatar & Voiceover - Add realistic AI avatars and voiceovers to videos
- One-Click Video Generation - Generate complete videos with a single prompt
- TikTok Shop
- Amazon
- Shopify
- WooCommerce
- And more e-commerce platforms
- Framework: Next.js 16 with React 19, Turbopack
- Database: PostgreSQL with Drizzle ORM
- Authentication: better-auth
- i18n: next-intl (English & Chinese)
- AI Providers: Kie, Replicate, Fal, Gemini, Sora2, VideoOne
- Analytics: Google Analytics, Microsoft Clarity, Plausible, OpenPanel, Vercel Analytics
- Deployment: Vercel / Cloudflare
- Node.js 18+
- pnpm 8+
- PostgreSQL database
# Clone the repository
git clone https://github.com/your-username/shopshot.git
cd shopshot
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env.local
# Configure your database connection
# DATABASE_URL=postgresql://user:password@localhost:5432/shopshot
# Push database schema
pnpm db:push
# Start development server
pnpm dev# Database
DATABASE_URL=postgresql://...
# Authentication
AUTH_SECRET=your-auth-secret
# Application
NEXT_PUBLIC_APP_URL=https://www.shopshot.top
# AI API (optional - for custom video generation backend)
VIDEO_ONE_API_ENDPOINT=http://127.0.0.1:8888
# OSS Storage (optional)
OSS_ACCESS_KEY_ID=your-key
OSS_ACCESS_KEY_SECRET=your-secret
OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
OSS_BUCKET_NAME=your-bucketpnpm dev # Start dev server with Turbopack
pnpm build # Production build
pnpm start # Start production server
pnpm lint # Run ESLint
pnpm format # Format code with Prettierpnpm db:generate # Generate migrations from schema
pnpm db:migrate # Apply database migrations
pnpm db:push # Push schema changes directly (dev only)
pnpm db:studio # Open Drizzle Studiopnpm auth:generate # Generate auth types and utilitiespnpm rbac:init # Initialize default roles and permissions
pnpm rbac:assign # Assign roles to userspnpm cf:preview # Build and preview Cloudflare deployment
pnpm cf:deploy # Deploy to Cloudflare
pnpm cf:upload # Build and upload to Cloudflare
pnpm cf:typegen # Generate Cloudflare environment typessrc/
├── app/ # Next.js App Router pages
│ ├── [locale]/ # Internationalized routes
│ │ ├── (landing)/ # Public landing pages
│ │ ├── (auth)/ # Authentication pages
│ │ ├── (admin)/ # Admin dashboard
│ │ └── (chat)/ # Chat interface
│ └── api/ # API routes
├── core/ # Core systems
│ ├── auth/ # Authentication (better-auth)
│ ├── db/ # Database connection
│ ├── i18n/ # Internationalization
│ ├── rbac/ # Role-based access control
│ └── docs/ # Documentation system
├── extensions/ # Pluggable extensions
│ ├── ai/ # AI providers & generation
│ ├── analytics/ # Analytics providers
│ ├── payment/ # Payment integrations
│ └── storage/ # Cloud storage integrations
├── shared/ # Shared code
│ ├── models/ # Data models
│ ├── services/ # Service layer
│ ├── blocks/ # UI components
│ └── lib/ # Utilities
└── config/ # Configuration
├── db/ # Database schema
└── locale/ # i18n messages
- User - User accounts with credits system
- AI Task - AI generation tasks with provider integration
- Credit - FIFO-based credit consumption system
- Post - Blog posts and content
- Order/Subscription - Payment records
- Chat - Conversation history
ShopShot uses a provider-based AI system (AIManager) that supports multiple providers:
- Kie
- Replicate
- Fal
- Gemini
- Sora2
- VideoOne (custom backend for clone and one-click video generation)
ShopShot supports multiple analytics providers:
- Google Analytics (
G-BZ469LWYHH) - Microsoft Clarity
- Plausible Analytics
- OpenPanel
- Vercel Analytics
The platform includes comprehensive SEO optimization:
- XML sitemap (
/sitemap.xml) - Robots.txt configuration
- Open Graph and Twitter Card meta tags
- JSON-LD structured data (BlogPosting schema)
- Canonical URLs
- Multi-language hreflang tags
Private - All rights reserved