Commit Graph

8 Commits

Author SHA1 Message Date
will 0d8e50cbe3 Move Neon Tan's landing page from bookshop into Hugo
deploy / deploy (push) Successful in 6s
bookshop already supports this: ALLOWED_ORIGIN + CORS on POST
/arc/{code} exist specifically so a page on the brand's own domain can
call it cross-origin. There was no reason for bookshop to also render
the marketing/landing page itself — that put book copy inside a
generic, brand-agnostic Go template shared across every brand instead
of under normal editorial control like every other page on this site.

/books/neon-tan/ is now a plain Hugo page (content/books/neon-tan.md,
no longer draft-only/metadata-only — it's rendered for real via the new
layouts/books/single.html) with a small JS form
(layouts/partials/arc-redeem-form.html, mirroring the existing
course-enroll-form.html pattern) that POSTs form-encoded straight to
shop.michaelferrara.org/arc/neon-tan. bookshop's GET /arc/{code} page
rendering is no longer used for this campaign; only the POST redemption
and the download/Kindle/read/checkout endpoints still are.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 18:04:56 -04:00
will d61ba514dd Restore original reader-magnet copy as the ARC page logline
deploy / deploy (push) Successful in 5s
The old /gift page's actual visible pitch ("The world is stranger than
it looks...") got replaced with the book's back-cover blurb when this
file was first created — this was the wrong text to lose; the blurb was
only ever used as /gift's SEO meta description, not its visible copy.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 17:52:16 -04:00
will 29cfad5980 Retire the old EEC-based /gift reader-magnet pages
deploy / deploy (push) Successful in 6s
Neon Tan now ships via shop.michaelferrara.org/arc/neon-tan (bookshop's
ARC giveaway: single email field, gated download, tracked redemptions)
instead of these EEC-course-driven pages, which required first name as
well as email and served the epub from an ungated public bucket URL.

Old /gift and /gift-thanks paths still work via Caddy's path_redirects
(reground-infrastructure), so any existing bookmarks/emailed links keep
resolving to the new page instead of 404ing.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 17:29:04 -04:00
will dcffe1b171 Add content/books/neon-tan.md as arc-campaign.sh metadata source
deploy / deploy (push) Successful in 6s
Front-matter-only, mirroring thistleandmoth-site's books/ convention.
Feeds the bookshop ARC campaign's title/author/cover/description —
draft: true, not meant to render as its own page (no books layout
exists in this site).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 17:26:03 -04:00
will 51ab8f842d Use a branded landscape social card instead of the raw portrait cover
deploy / deploy (push) Successful in 4s
The book cover is a 1664x2432 portrait image, which crops badly into
og:image's expected 1200x630. Add a social_image field (a composited
card: cover centered on the site's parchment background) that og:image/
twitter:card prefer, falling back to cover_image if unset.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 06:57:48 -04:00
will 55283f14aa Finish the Neon Tan reader-magnet page
deploy / deploy (push) Successful in 5s
Fill in the gift page's copy (title, description, subhead), wire the
cover image into the hero and og:image/Twitter card meta, and point the
download links at the real bucket path. Also fixes a bug where every
page's meta description fell back to the site-wide bio instead of its
own.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 06:30:28 -04:00
will 7c059ece02 Rename freebie -> gift
deploy / deploy (push) Successful in 3s
Matches the gift.<domain> vanity redirect's own name instead of a
different word for the same page.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-15 11:06:07 -04:00
will f380af16a1 Scaffold michaelferrara-site: Hugo skeleton with reader-magnet freebie flow
deploy / deploy (push) Successful in 4s
2026-07-15 06:39:49 -04:00