Sell your stuff. See what sticks.
Gumroad is an e-commerce platform that enables creators to sell products directly to consumers. This documentation will guide you through setting up and running the Gumroad web application locally.This is the official documentation for the open-source Gumroad codebase. Whether you’re contributing to the project or learning how it works, you’ll find everything you need here.
What is Gumroad?
Gumroad is a full-featured e-commerce platform built with Ruby on Rails and React that provides creators with:- Product Management - Create and manage digital and physical products
- Payment Processing - Integrated payment solutions with Stripe, PayPal, and more
- Customer Management - Track buyers, send receipts, and manage relationships
- Analytics - Understand your sales and customer behavior
- Content Delivery - Secure delivery of digital products
- Subscription Support - Recurring payments and memberships
Technology Stack
Gumroad is built with modern web technologies:Backend
- Rails 7.1.6 - Ruby web framework
- Ruby 3.4.3 - Programming language
- MySQL 8.0 - Primary database
- Sidekiq 7.2 - Background job processing
- Elasticsearch 7.11 - Search functionality
Frontend
- React 18 - UI library
- TypeScript 5.5 - Type-safe JavaScript
- Node.js 20.17 - JavaScript runtime
- Tailwind CSS 4 - Utility-first CSS
- Inertia.js - Modern monolith architecture
Infrastructure
- Docker - Containerized services
- Redis - Caching and job queues
- MongoDB - Document storage
- AWS S3 - File storage
- Puma - Application server
Tools & Services
- ImageMagick & libvips - Image processing
- FFmpeg - Video processing
- PDFtk - PDF manipulation
- Webpack - Asset bundling
- RSpec - Testing framework
Quick Navigation
Get started with Gumroad development:Quickstart
Get the app running locally in minutes with our step-by-step guide
Installation
Detailed prerequisites and installation instructions for all dependencies
Development
Learn about common development tasks, testing, and debugging
Contributing
Guidelines for contributing code, writing tests, and submitting PRs
Platform Support
Gumroad supports development on:- macOS - Full support with Homebrew for dependency management
- Linux - Ubuntu/Debian distributions with apt package manager
- Windows - Via WSL (Windows Subsystem for Linux)
Community & Support
Join the Gumroad development community:- GitHub Repository - github.com/antiwork/gumroad
- Issues - Report bugs and request features on GitHub
- Pull Requests - All issues labeled
help wantedare open for contributions - License - MIT License (see LICENSE.md)
Next Steps
Ready to get started? Here’s what to do next:Read the Quickstart
Follow our quickstart guide to get the app running in under 15 minutes
Install Prerequisites
Review the installation guide for detailed setup instructions
Start Developing
Check out the development guide to learn common workflows
Make Your First Contribution
Read the contributing guidelines and find an issue to work on
The Gumroad codebase is production-grade software serving real users. Take time to understand the architecture before making changes.