Skip to content

fix(marketing): correct llms.txt CLI commands, unify homepage metadata, add FAQPage schema - #41

Merged
rclanan merged 1 commit into
mainfrom
seo/llms-title-faq-schema
Oct 19, 2026
Merged

rclanan merged 1 commit into
mainfrom
seo/llms-title-faq-schema

Conversation

@rclanan

@rclanan rclanan commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Summary

SEO/GEO fixes from the Oct 16 baseline audit. Each issue was checked against the source before fixing.

1. llms.txt: real CLI commands

  • mockforge http --spec does not exist. The CLI (crates/mockforge-cli, binary mockforge) has no http subcommand; the right command is mockforge serve --spec <file> --http-port 3000.
  • Removed install claims I could not back up: there is no Homebrew formula in the mockforge repo, and the npm SDKs are client libraries, not a way to install the CLI. The install line now lists cargo install mockforge-cli plus the GHCR image, with a docker run ... serve --spec example taken from the docs installation guide.
  • Corrected "The admin UI runs by default". AdminConfig::default() has enabled: false, so you have to pass --admin (port 9080).
  • The protocol port flags I list (--grpc-port, --ws-port, --graphql-port, --kafka-port, --mqtt-port, --smtp-port) all appear in scripts/docs-cli-surface.json for serve.
  • The docs links now point to the real installation and quick-start pages, and both return 200.

2. Homepage title and one description

  • Title (PENDING Macon's wording approval): MockForge: open-source API mock server for REST, gRPC, WebSocket and Kafka. Each listed protocol has a protocol crate and a serve port flag. GraphQL, MQTT, AMQP, SMTP, FTP and TCP are also supported if Macon wants a different list. I used a colon instead of an em dash to match the site design skill's em-dash rule. The same title goes in og:title and twitter:title.
  • Description: meta, og:description, twitter:description and the SoftwareApplication JSON-LD now all use one sentence. It is the existing JSON-LD wording: "A comprehensive mocking framework for REST, gRPC, GraphQL, WebSocket, Kafka, MQTT and more. Generate realistic data, inject latency and failures, and deploy hosted mocks with a single command." I picked it over the old meta description because the old one listed only REST, gRPC and WebSockets, which undersold the product. No new marketing copy was written. This sentence still needs to give way to the canonical description Macon approves.
  • Not changed: the shared Organization JSON-LD in scripts/build-pages.js, used on every page except the homepage, has its own description ("Open-source API mocking framework for REST, gRPC, GraphQL, WebSockets, and SMTP."). Changing it rebuilds every page, so I left it for the canonical-description pass.

3. FAQPage JSON-LD on /faq.html

The script was generated from the visible <dt>/<dd> pairs: the same 5 questions, with answer text identical to the page (link markup stripped). No questions were added.

4. Organization sameAs

No change. The current values are:

  • https://github.com/SaaSy-Solutions/mockforge: verified (200).
  • https://www.linkedin.com/company/mockforge: unverified. LinkedIn answers automated checks with 999, so a human needs to confirm the URL is ours.
  • No X/Twitter, Facebook or other profiles were added because none are verified. Please supply the real URLs if they exist.

Verification

  • npm ci && node scripts/build-pages.js --force && npm run build:css && npm run build:pages && npm run build:site: the second build:pages run is idempotent, and public/styles.css is unchanged.
  • npm run check:links -- --internal-only: 120 links, none broken.
  • The JSON-LD in root and dist/ index.html/faq.html parses (Organization+SoftwareApplication on the homepage; FAQPage+Organization on the FAQ page).
  • Deploy safety: deploy-pages.yml runs only on push to main or by manual dispatch. This PR runs only verify-pages-build.yml.

🤖 Generated with Claude Code

…a, add FAQPage schema

- llms.txt: replace the nonexistent `mockforge http --spec` with
  `mockforge serve --spec`, drop the unsupported Homebrew/npm install
  claims, add the GHCR Docker command, and note that the admin UI needs
  `--admin` (it is off by default).
- Homepage: keyword-bearing title and one description across meta, Open
  Graph, Twitter and JSON-LD (reuses the existing JSON-LD wording).
- FAQ: FAQPage JSON-LD mirroring the five visible questions verbatim.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codedig-ai

codedig-ai Bot commented Oct 16, 2026

Copy link
Copy Markdown

🟢 CodeDig PR Analysis — PASSED; analysis max severity: none; shown blockers: 0 (none); budget: 0/100 points consumed, 100 points remaining (green)

Budget status does not override the recorded gate verdict.

Summary

Metric Value
Files Changed 0
Total Findings 0
Critical 0
High 0
Public API Changes 0
New PII Flows 0
Complexity Spikes 0
Co-change Risks 0

Coverage data: not available.

🧪 Test Coverage Delta (no data)

Coverage data not available for this repo — enable via Settings → Coverage

→ View full report


Powered by CodeDig

@codedig-ai

codedig-ai Bot commented Oct 19, 2026

Copy link
Copy Markdown

🟢 CodeDig PR Analysis — PASSED; analysis max severity: none; shown blockers: 0 (none); budget: 0/100 points consumed, 100 points remaining (green)

Budget status does not override the recorded gate verdict.

Summary

Metric Value
Files Changed 0
Total Findings 0
Critical 0
High 0
Public API Changes 0
New PII Flows 0
Complexity Spikes 0
Co-change Risks 0

Coverage data: not available.

🧪 Test Coverage Delta (no data)

Coverage data not available for this repo — enable via Settings → Coverage

→ View full report


Powered by CodeDig

@rclanan
rclanan merged commit 2da2693 into main Oct 19, 2026
2 checks passed
@codedig-ai codedig-ai Bot added codedig/blast-low Blast radius low — ≤ 10 callers affected codedig/effort-1 Effort score 1/5 — minimal blast radius and complexity codedig/risk-green Risk budget < 50 % — safe to merge labels Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

codedig/blast-low Blast radius low — ≤ 10 callers affected codedig/effort-1 Effort score 1/5 — minimal blast radius and complexity codedig/risk-green Risk budget < 50 % — safe to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant