antiwork / gumroad
git clone https://github.com/antiwork/gumroad.git
v2026.10.21.2 · 1d ago
🔥 on GitHub Trending today
Ruby on Rails source code for Gumroad, an e-commerce platform that lets creators sell products directly to consumers.
Why you might care
Useful for developers studying a large production Rails e-commerce codebase or contributing to it. It is the actual source behind gumroad.com; the README says external changes go through forks and email review, not an open inbound queue.
+2
stars, 24h · #7,286
+134
stars, 7 days · #920
+319
stars, 30 days · #1,648
10k
★ total · +1% this week
2.1k
forks · 5 open issues
Star history (as recorded here)
LanguageRuby
LicenseMIT
Created2025-04-03 (1y ago)
Last pushtoday
Watchers102
OwnerOrganization
Seen on GitHub Trending
- 2026-10-22 — #4 monthly in ruby · +320 ★
- 2026-10-22 — #1 weekly in ruby · +103 ★
- 2026-10-21 — #4 monthly in ruby · +319 ★
- 2026-10-21 — #1 weekly in ruby · +134 ★
Links
- GitHub: github.com/antiwork/gumroad
- Homepage: https://gumroad.com
- Releases · Issues · Hacker News mentions
README excerpt
See what sticks. Gumroad is an e-commerce platform that enables creators to sell products directly to consumers. This repository contains the source code for the Gumroad web application. ## Contributing We don't run an inbound review queue on this repo. To contribute a change: **fork the repo, open the pull request on your own fork, then email support@gumroad.com with a link to it.** We read every submission and merge the ones we want on our side, keeping your authorship — though we can't promise a reply to each one or a timeline. Your PR still has to meet the same bar as our own work — visual evidence for anything user-facing, QA steps, test results, and an AI disclosure naming the model. See CONTRIBUTING.md for the full guidelines and the substitutions that apply when working from a fork. ## Table of Contents - Contributing - Getting Started - Prerequisites - Installation - Configuration - Running Locally - Testing - Dependencies - Integration tests - Development - Logging in - Resetting Elasticsearch indices - Push Notifications - Common Development Tasks - Linting ## Getting Started ### Prerequisites > 💡 If you're on Windows, follow our Windows setup guide instead. Before you begin, ensure you have the following installed: #### Ruby - https://www.ruby-lang.org/en/documentation/installation/ - Install the version listed in the .ruby-version file #### Node.js - https://nodejs.org/en/download - Install the version listed in the .node-version file #### Docker We use Docker to setup the services for development environment. - For MacOS: Download the Docker app from the Docker website - For Linux: [code] #### MySQL & Percona Toolkit Install a local version of MySQL 8.4.x to match the version running in production. The local version of MySQL is a dependency of the Ruby `mysql2` gem. You do not need to start an instance of the MySQL service locally. The app will connect to a MySQL instance running in the Docker container. - For MacOS: [code] - For Linux: - MySQL: - https://dev.mysql.com/doc/refman/8.4/en/linux-installation.html - `apt install libmysqlclient-dev` - Percona Toolkit: https://www.percona.com/doc/percona-toolkit/LATEST/installation.html #### ImageMagick We use `imagemagick` for preview editing. - For MacOS: `brew install imagemagick` - For Linux: `sudo apt-get install imagemagick` #### FFmpeg We use `ffprobe` that comes with `FFmpeg` package to fetch metadata from video files. - For MacOS: `brew install ffmpeg` - For Linux: `sudo apt-get install ffmpeg` #### PDFtk We use pdftk to stamp PDF files with the Gumroad logo and the buyers' emails. - For MacOS: Download from here - **Note:** pdftk may be blocked by Apple's firewall. If this happens, go to Settings > Privacy & Security and click "Open Anyways" to allow the installation. - For Linux: `sudo apt-get install pdftk` #### wkhtmltopdf While generating invoices, to convert HTML to PDF, PDFKit expects wkhtmltopdf to be installed on your system. Download and install th
Blurb generated by claude-haiku-5-5 1d ago. Star deltas marked ~ are extrapolated from partial history.