Answer-shaped SEO content: six guides, FAQ schema, llms.txt - #197
Merged
Conversation
App Store analytics show ChatGPT (com.openai.chat) is now our top named first-time-download referrer, with Gemini and Bing appearing too — but the site had almost nothing for an assistant to retrieve: a 123-word homepage and one welcome post. This gives assistants and search engines real passages to cite: - Six guides in posts/, one per question people actually ask assistants (old iPhone as remote camera, group photos, no-Bluetooth remote, iPad/Mac as monitor, Apple Watch remote, three-way comparison) - Optional faq: frontmatter on posts renders a visible FAQ section plus FAQPage JSON-LD - Homepage: What-is prose section, six-question FAQ with FAQPage schema, HowTo schema on the existing steps - public/llms.txt site map for AI crawlers Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Contributor
📊 Test Coverage Report✅ 626/638 tests passed · ⏭️ 12 skipped
🎥 Capture & session core
📁 Full report — 87 files
Generated from |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
App Store analytics now attribute real installs to AI assistants: ChatGPT (com.openai.chat) is our top named first-time-download referrer, with Gemini and Bing showing up too. But assistants retrieve passages, and remoteshutter.app had almost nothing to retrieve — a 123-word homepage and a single welcome post. When ChatGPT recommends us today it links the App Store page; content on our own domain closes the citation loop.
What
Six new guides in
website/posts/— one per question people actually ask assistants, each opening with a direct answer, steps, and a FAQ:use-old-iphone-as-remote-camera— spare phone as wireless camera (wildlife, check-ins, hard angles)group-photos-everyone-in-the-shot— vs self-timer / strangers / clickersiphone-camera-remote-without-bluetooth— vs Bluetooth shutter buttonsiphone-as-second-camera-mac-monitor— overhead/product rigs with iPad or Mac as monitorapple-watch-camera-remote— honest take on the built-in Watch remotecamera-remote-comparison— three-way comparison, includes the "when a $10 clicker is the right tool" caseFAQ pipeline: posts can declare
faq:entries in frontmatter;blog.tsparses them and the post page renders a visible FAQ section plusFAQPageJSON-LD.Homepage: new "What is Remote Shutter?" prose section (quotable facts: P2P, no account, 50 ft, nothing uploaded), six-question FAQ with
FAQPageschema,HowToschema on the existing steps. Existing design/copy untouched.public/llms.txt: markdown site map for AI crawlers (emerging standard; GPTBot and ClaudeBot already crawl us cleanly).Deliberately not included:
aggregateRatingschema — worldwide average is 3.32★ right now; add it after the review-prompt play lifts it.Verification
npx jest: 12/12 pass (2 new tests for the homepage sections)npm run build: clean static export, all 7 posts prerendered, FAQPage/HowTo schema and llms.txt confirmed inout/npx eslint .: clean🤖 Generated with Claude Code