Launch your online store in minutes. Built on Cloudflare's edge network for lightning-fast performance, zero infrastructure costs, and unlimited scalability.
OpenShop is the fastest, most cost-effective way to launch an e-commerce store. Built entirely on Cloudflare's edge network, you get:
- β‘ Lightning Fast - Sub-100ms response times worldwide
- π° Completely Free - Stays within Cloudflare's generous free tier (100k requests/day)
- π One-Command Deploy - Your store is live in under 5 minutes
- π Enterprise Security - Built-in DDoS protection, SSL, and secure authentication
- π± Mobile-First - Beautiful, responsive design that works everywhere
- π Unlimited Stores - Deploy as many stores as you want from one codebase
Perfect for entrepreneurs, developers, and businesses who want a professional online store without the complexity or cost of traditional e-commerce platforms.
- π Complete E-commerce - Products, collections, shopping cart, and Stripe checkout
- π¦ Product Management - Multiple images, variants, and rich descriptions
- π Collections - Organize products with beautiful hero banners
- π³ Stripe Integration - Automatic product sync and secure payment processing
- π Analytics Dashboard - Real-time revenue and order insights
- ποΈ Smart Shopping Cart - Persistent cart with quantity management
- π± Mobile Optimized - Fully responsive with mobile-specific cart experience
- π§ Intuitive Navigation - Collection links with product preview dropdowns
- π¨ Beautiful UI - Modern design with Tailwind CSS and ShadCN/UI
- πΌοΈ Rich Media Support - Multiple product images with carousel navigation
- π¨ Store Customization - Dynamic logo management (text or image)
- π Secure Admin System - Token-based authentication with session management
- π§ AI Image Generation (Optional) - Generate product images with Gemini AI
- βοΈ Google Drive Integration (Optional) - Store and serve images from Google Drive
- Node.js 18+ - Download here
- Cloudflare Account - Sign up free
- Stripe Account - Create account
-
Clone and Install
git clone https://github.com/AJFrio/OpenShop openshop cd openshop npm install -
Automated Deployment
npm run setup
The setup wizard will prompt you for:
- Project Name - Unique name for your store
- Cloudflare API Token - Get token here
- Cloudflare Account ID - Found in your Cloudflare dashboard
- Stripe Keys - Secret and publishable keys from Stripe dashboard
- Admin Password - Your secure admin password
- (Optional) Gemini API Key - For AI image generation
- (Optional) Google OAuth - For Google Drive integration
See Configuration Guide for detailed setup instructions.
-
π Your Store is Live!
Access your store at:
https://your-project-name.username.workers.devAccess admin at:
https://your-project-name.username.workers.dev/admin
Access your admin dashboard at /admin on your store URL.
Security Features:
- Password-protected login
- 24-hour session tokens
- Separate authenticated API endpoints
- No visible admin link on storefront (access via direct URL)
Admin Capabilities:
- Create, edit, and delete products with multiple images
- Manage collections with hero banners
- Customize store branding and appearance
- View real-time analytics and revenue insights
- Generate AI images (optional)
- Upload images to Google Drive (optional)
For detailed admin documentation, see Architecture Guide.
Deploy unlimited stores from a single codebase, each with its own:
- Worker deployment and subdomain
- Isolated KV namespace (separate data)
- Admin credentials and settings
- Stripe configuration
# Create your first store
npm run setup
# Project Name: "electronics-hub"
# Create another store
npm run setup
# Project Name: "fashion-boutique"
# List all your stores
npm run sites
# Deploy a specific store
npm run deploy electronics-hubSee Deployment Guide for complete multi-site documentation.
# Full-stack development (Worker + Frontend)
npm run dev
# Frontend-only development
npm run dev:frontend
# Build for production
npm run build
# Deploy to production
npm run deploy
# Preview production build locally
npm run previewFor detailed development instructions, see Development Guide.
Complete documentation is available in the docs/ directory:
- Architecture Guide - Technical architecture, security, and data models
- API Reference - Complete API documentation
- Configuration Guide - Environment variables and setup
- Stripe Integration - Payment processing and webhook setup
- AI & Media - Gemini AI and Google Drive integration
- Deployment Guide - Deployment instructions and multi-site setup
- Performance Guide - Performance metrics and optimization
- Customization Guide - Frontend and backend customization
- Troubleshooting - Common issues and solutions
- Testing Guide - Testing guidelines and examples
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow existing code style and patterns
- Add tests for new functionality
- Update documentation for any changes
- Ensure all builds pass before submitting
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the LICENSE file for details.
- π Documentation - Complete guides in the
docs/directory - π Bug Reports - GitHub Issues
- π‘ Feature Requests - GitHub Discussions
- π¬ Community Chat - Discord Server
- Cloudflare Workers Documentation
- Stripe API Documentation
- Tailwind CSS Documentation
- ShadCN/UI Documentation
Special thanks to:
- Cloudflare - For the incredible Workers platform and generous free tier
- Stripe - For reliable payment processing and excellent developer experience
- Vercel - For the ShadCN/UI component library
- The Open Source Community - For the amazing tools and libraries
Built something awesome with OpenShop? We'd love to feature your store! Open an issue with your store URL and a brief description.
Made with β€οΈ for the open-source community
β Star this repo β’ π Report Bug β’ π‘ Request Feature