Skip to content

Repository files navigation

OpenShop Logo

OpenShop - An Open-Source AI Platform for Smarter Stores.

Launch your online store in minutes. Built on Cloudflare's edge network for lightning-fast performance, zero infrastructure costs, and unlimited scalability.

License: AGPL v3 Node.js Version Deploy to Cloudflare


Why OpenShop?

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.


Features

Core Functionality

  • 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

User Experience

  • 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

Advanced Features

  • 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 via OpenRouter
  • Google Drive Integration (Optional) - Store and serve images from Google Drive

Quick Start

Prerequisites

One-Command Setup

  1. Clone and Install

    git clone https://github.com/AJFrio/OpenShop openshop
    cd openshop
    npm install
  2. 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
    • (Optional) Stripe Keys - Press Enter to skip; you can add them later
    • (Optional) OpenRouter API Key - For AI image generation
    • (Optional) Admin Password - Press Enter for the default
    • (Optional) Google OAuth - For Google Drive integration

    Only the first three are required. Everything else can be set later from the admin panel under Developer Settings, without redeploying.

    See Configuration Guide for detailed setup instructions.

  3. Your Store is Live!

    Access your store at: https://your-project-name.username.workers.dev

  4. Sign in and secure it

    Go to /admin and sign in. If you skipped the password prompt, the default is admin123 — the panel will warn you and require a change before you do anything else.

    Without Stripe keys the store runs in catalogue-only mode: you can add products and design the storefront, but checkout stays disabled until you add keys under Developer Settings.

    Access admin at: https://your-project-name.username.workers.dev/admin


Admin Dashboard

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.


Multiple Store Support

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-hub

See Deployment Guide for complete multi-site documentation.


Development

Local Development

# 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 preview

For detailed development instructions, see Development Guide.


Documentation

Complete documentation is available in the docs/ directory:


Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines

  • Follow existing code style and patterns
  • Read AGENTS.md for repository navigation and layer rules
  • Run npm run harness:validate and npm test -- --run before submitting
  • Add tests for new functionality
  • Update documentation for any changes
  • Ensure lint and harness CI pass before submitting

License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the LICENSE file for details.


Support & Community

Getting Help

Resources


Acknowledgments

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

Showcase

Built something awesome with OpenShop? We'd love to feature your store! Open an issue with your store URL and a brief description.


Made for the open-source community

Star this repoReport BugRequest Feature

About

Opensource, easy to use E-comm platform for business owners and creatives

Topics

Resources

Security policy

Stars

10 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages