A one-time purchase Chrome extension for developers that captures API endpoints from any web app and generates OpenAPI/Swagger documentation.
No subscription. No recurring fees. One payment, lifetime updates.
FastAPI Doc Gen sits in your browser toolbar and automatically detects API calls on any web page you visit. It captures:
- Fetch API calls — intercepts all
fetch()requests - XHR requests — intercepts all
XMLHttpRequestcalls - API documentation links — finds
/api/,/docs, Swagger/OpenAPI links - Embedded specs — detects OpenAPI/Swagger JSON in
<script>tags - Axios instances — detects axios base URLs
Then it generates a complete OpenAPI 3.0.3 specification that you can:
- Copy to clipboard
- Download as
openapi.json - Use to generate client SDKs, server stubs, or documentation
Chrome extensions with one-time purchases have proven revenue:
| Extension | Price | Revenue |
|---|---|---|
| CSS Scan | $69 one-time | $100K+ |
| Spider | $38 one-time | $10K in 2 months |
| GoFullPage | $1/month | $10K/month |
FastAPI Doc Gen targets developers who need to document APIs they're building or consuming. The one-time purchase model means:
- No churn
- No billing infrastructure
- No customer support for failed payments
- Lifetime value per customer
# Clone the repo
git clone https://github.com/ptrken01/fastapi-doc-gen.git
cd fastapi-doc-gen
# Load in Chrome:
# 1. Go to chrome://extensions
# 2. Enable "Developer mode"
# 3. Click "Load unpacked"
# 4. Select this folder- One-time purchase: $29 (via ExtensionPay)
- Includes all future updates
- 30-day money-back guarantee
The extension uses ExtensionPay for payment. You MUST complete these steps or the extension stays free:
- Create an ExtensionPay account at extensionpay.com
- Create a new extension in your ExtensionPay dashboard — note the extension ID you choose (default is
fastapi-doc-gen, matchingpopup/config.js) - Set the price to $29 one-time
- The extension is now paywalled:
generateOpenAPI()is locked until the user purchases - Update
popup/config.jsif your ExtensionPay ID differs fromfastapi-doc-gen
How the paywall works:
- On popup open,
checkPurchase()callsExtensionPay.getUser()to verify payment - If not purchased: Scan + Capture are free (preview), but Generate OpenAPI is locked
- Clicking "Generate" while locked opens the ExtensionPay purchase page
- After purchase, ExtensionPay sets a cookie and
state.isPurchasedbecomes true
- Create an ExtensionPay account at extensionpay.com
- Create a new extension with ID
fastapi-doc-genand set price to $29 one-time - Zip the folder and upload to Chrome Web Store
- (Chrome Web Store itself shows "Free" — ExtensionPay handles the actual charge inside the extension)
- Manifest V3 Chrome Extension
- Vanilla JavaScript (no frameworks)
- ExtensionPay for payments
- Chrome Storage API for persistence
fastapi-doc-gen/
├── manifest.json # Extension manifest
├── popup/
│ ├── popup.html # Popup UI
│ ├── popup.css # Popup styles
│ ├── popup.js # Popup logic
│ └── extensionpay.js # ExtensionPay integration
├── content/
│ ├── content.js # Content script (API capture)
│ └── content.css # Content script styles
├── background/
│ └── background.js # Background service worker
├── options/
│ └── options.html # Options page
└── icons/ # Extension icons
- Create an ExtensionPay account at extensionpay.com
- Create a new extension with ID
fastapi-doc-gen - Set price to $29 one-time
- Zip the folder and upload to Chrome Web Store
- Set Chrome Web Store listing price to $29
MIT — but the extension itself is a paid product. The source is available for learning purposes.
All products + free articles: autoincomesys.com — local-first AI dev notes, build-once digital products (Gumroad).