config/projects/business/memory/decisions.md

2.1 KiB

Decisions Log

2026-02-14 — Product: PDF API (approved by user)

Chose HTML/Markdown to PDF API over webhook relay and JSON schema validation. Fastest to ship, proven demand, clear monetization.

2026-02-14 — Name: DocFast

Product name "DocFast" — short, memorable, describes value prop (fast document generation). Domain TBD.

2026-02-14 — Tech Stack: TypeScript + Express + Puppeteer

  • TypeScript for type safety and fast iteration
  • Express for simplicity (no framework overhead)
  • Puppeteer for high-fidelity PDF rendering (Chrome-based = pixel-perfect)
  • Marked for markdown parsing
  • Chose Puppeteer over wkhtmltopdf/pdfkit for better CSS support and template rendering quality

2026-02-14 — Templates: Invoice + Receipt first

Built-in invoice and receipt templates as differentiator. Most PDF API competitors are raw converters — templates add immediate value for common use cases.

2026-02-14 — Pricing model (planned)

  • Free tier: 100 PDFs/month
  • Pro: $9/mo for 5,000 PDFs
  • Business: $29/mo for 25,000 PDFs
  • Enterprise: custom Not yet implemented — need Stripe integration.

2026-02-14 — Phase 2: Go to market

QA Session 14 verified all 3 investor-reported bugs are fixed. 3 minor edge cases (BUG-004/005/006) logged but not blocking launch. Product is shippable — moving to marketing and customer acquisition.

2026-02-14 — Phase 2 confirmed after full Playwright QA

BUG-004 (CSP inline scripts) and BUG-005 (CSP inline onclick) both fixed and verified. Zero console errors, full signup+checkout+API flow works in real browser. Only BUG-006 (cosmetic copy feedback) remains — not blocking launch.

2026-02-14 — Free tier limit: 50 PDFs/month (in-memory tracking)

Reduced from 100 to 50 for free tier enforcement. In-memory tracking for MVP (resets on restart). Will need Redis or SQLite for production persistence. Pro keys bypass limits via PRO_KEYS env var.

2026-02-14 — URL→PDF endpoint added

High-demand feature that differentiates from simpler HTML-only converters. Validates URLs (http/https only), 30s timeout, configurable wait strategy. Security note: may need SSRF protection before production (block private IPs).