DEPLOY · OPERATOR USE

Deploy checklist — deskrune.com v3

At the end of this checklist, deskrune.com serves static HTML from Cloudflare Pages, handles email subscriptions via a Workers KV-backed endpoint, delivers lead magnet PDFs on subscribe, processes payments through Gumroad and Payhip with live product links, and logs all conversions — with the first paid PDF sold and tracked in Resend and Gumroad analytics.


Phase 1: Domain

  1. Log into Cloudflare dashboard
    Go to https://dash.cloudflare.com and sign in
  2. Select domain
    Click on deskrune.com from the domain list
  3. Verify DNS records
    Confirm A record points to 104.21.34.121 and CNAME www points to deskrune.com.pages.dev
  4. Enable proxy
    Ensure DNS records are orange-clouded (proxied)
  5. Disable SSL/TLS encryption mode
    Set SSL/TLS to Full (strict)
  6. Wait for DNS propagation
    Wait 5 minutes, then run dig deskrune.com in terminal

Phase 2: Cloudflare Pages deploy

  1. Navigate to Pages
    Click on Pages in left sidebar of Cloudflare dashboard
  2. Select existing project
    Click on existing project named 'toolstack-fyi'
  3. Rename project
    Click Settings > General > Rename to 'deskrune.com'
  4. Change build settings
    Set Build directory to 'site/web/' and Build command to 'echo No build needed'
  5. Set publish directory
    Confirm Publish directory is 'site/web/'
  6. Trigger deploy
    Click Deploy site button
  7. Wait for deploy status
    Wait until status shows 'Deployed' (takes 30-90 seconds)
  8. Verify live URL
    Visit https://deskrune.com and confirm homepage loads

Phase 3: Worker + KV + Resend

  1. Open Workers & Pages
    Click Workers & Pages in Cloudflare dashboard
  2. Create new worker
    Click Create application > Create custom worker
  3. Name worker
    Enter 'subscribe-worker' as name
  4. Paste code
    Replace default code with content from api/subscribe.js
  5. Save and deploy
    Click Save and Deploy
  6. Create KV namespace
    Go to KV > Create namespace > Name: 'subscribers' > Create
  7. Bind KV to worker
    In worker settings, click Add binding > Type: KV Namespace > Variable: 'SUBSCRIBERS' > Select 'subscribers'
  8. Set Resend API key
    In worker code, replace 'RESEND_API_KEY' with actual key from Resend dashboard > Settings > API Keys
  9. Test endpoint
    Run curl -X POST https://subscribe-worker.deskrune.com -d '{"email":"[email protected]"}' in terminal
  10. Verify email receipt
    Check Resend dashboard > Messages for '[email protected]' delivery
  11. Set route
    In Workers & Pages > Routes > Add route: subscribe.deskrune.com/* > Select 'subscribe-worker'

Phase 4: Gumroad listings

  1. Log into Gumroad
    Go to https://gumroad.com/login
  2. Open product list
    Click Products in left menu
  3. Edit product 1
    Click on 'dsk-aios-01' product
  4. Update download link
    Set Download link to https://deskrune.com/pdfs/dsk-aios-01.pdf
  5. Update price
    Set price to $14.99
  6. Save product
    Click Save
  7. Repeat for 10 more products
    Repeat steps 4-6 for dsk-aios-02 through dsk-aios-11
  8. Copy product URLs
    For each product, copy the Gumroad link from the Share button
  9. Update site links
    In site/web/index.html, replace placeholder Gumroad links with actual product URLs

Phase 5: Payhip listings

  1. Log into Payhip
    Go to https://payhip.com/login
  2. Navigate to products
    Click Products in top menu
  3. Edit product 1
    Click on 'dsk-aios-12' product
  4. Update file
    Under Files, upload pdfs/dsk-aios-12.pdf
  5. Set price
    Set price to $19.99
  6. Save product
    Click Save Changes
  7. Copy product link
    Click Share > Copy link
  8. Update site links
    In site/web/index.html, replace Payhip placeholder with actual product link
  9. Repeat for product 2
    Repeat steps 3-8 for 'dsk-aios-13'

Phase 6: End-to-end test

  1. Visit homepage
    Open https://deskrune.com in incognito window
  2. Submit email
    Enter [email protected] in subscribe form and click Submit
  3. Verify email delivery
    Check Resend dashboard for '[email protected]' receipt
  4. Download lead magnet
    Click link in email to download pdfs/dsk-lead-magnet.pdf
  5. Verify PDF integrity
    Open downloaded PDF and confirm it matches source file in pdfs/
  6. Click Gumroad link
    Click first Gumroad product link on homepage
  7. Complete test purchase
    Use Gumroad test email ([email protected]) to buy dsk-aios-01 for $0.01
  8. Verify Gumroad sale
    Check Gumroad dashboard > Sales for transaction
  9. Click Payhip link
    Click first Payhip product link on homepage
  10. Complete test purchase
    Use Payhip test email to buy dsk-aios-12 for $0.01
  11. Verify Payhip sale
    Check Payhip dashboard > Sales for transaction
  12. Check KV storage
    In Cloudflare dashboard > KV > subscribers > Browse > confirm [email protected] is stored

Phase 7: First content drop

  1. Create blog post
    In site/web/blog/, create file dsk-aios-01.md with title and 300 words
  2. Add to navigation
    In site/web/index.html, add link to /blog/dsk-aios-01 under 'Latest Posts'
  3. Build static site
    Run npx serve site/web/ in terminal to preview locally
  4. Commit changes
    Run git add . && git commit -m "feat: drop first blog post and update nav"
  5. Push to repo
    Run git push origin main
  6. Verify auto-deploy
    Wait for Cloudflare Pages to auto-deploy new version
  7. Visit blog post
    Open https://deskrune.com/blog/dsk-aios-01 and confirm renders correctly

Phase 8: Watch+iterate

  1. Enable Cloudflare Analytics
    In Cloudflare dashboard > Analytics > Web > Enable for deskrune.com
  2. Set up Resend analytics
    In Resend > Emails > Enable open/click tracking
  3. Set up Gumroad analytics
    In Gumroad > Analytics > Enable conversion tracking
  4. Set up Payhip analytics
    In Payhip > Analytics > Enable sales funnel tracking
  5. Create weekly review
    Schedule Monday 9am to review: email signups, PDF downloads, Gumroad sales, Payhip sales
  6. Log first conversion
    Record first paid sale in Notion: date, product, email, revenue
  7. Update homepage CTA
    Change homepage button text from 'Subscribe' to 'Get dsk-aios-01 free'
  8. Add UTM tag
    Append ?utm_source=homepage&utm_medium=lead_magnet to all Gumroad and Payhip links

Common blockers + fixes

Emails not sending from Resend
Check that Resend API key is correctly pasted in subscribe.js and not wrapped in quotes or line breaks
PDF download returns 404
Confirm pdfs/ files are in the root of the repo and linked as /pdfs/filename.pdf, not relative paths
Worker returns 500 on subscribe
Run wrangler logs --name subscribe-worker in terminal to inspect error logs
Cloudflare Pages deploy fails
Ensure site/web/ folder exists and contains index.html — empty folders cause deploy failure
Gumroad link opens blank page
Verify Gumroad product is published (not draft) and link is https://gum.co/..., not shortlink

First-revenue target

Week 1: 1 paid sale (any product) tracked in Gumroad or Payhip. Week 4: 5 paid sales across both platforms, with 50+ email signups and 30+ PDF downloads.

Do NOT do

For when you come back.