docs.beamable.com — the pre-migration ReadMe.io site — is still fully live, still the only documentation the marketing site links to, and still the search-canonical copy. The MkDocs migration that history/readme-io-to-mkdocs-conversion-manual.md on main describes was completed as a content exercise and never as a decommission exercise.
Current state
docs.beamable.com returns 200 across the board; robots.txt is Allow: /
- Its pages carry
<link rel="canonical" href="https://beamable2.readme.io/...">, so search engines are told the ReadMe copy is authoritative
- It serves an
llms.txt index — an explicit invitation for AI assistants to read the legacy docs, including "Append .md to any documentation page URL to get its markdown version"
beamable.com links only to docs.beamable.com. The homepage and every page sampled point at docs.beamable.com/docs/beamable-overview. Nothing on the marketing site links to help.beamable.com
- 316 pages in the ReadMe sitemap
Content parity: what is actually missing
Slug-matched the 316 legacy pages against every live branch, then hand-checked the buckets. 162 have a clear counterpart; 154 did not match — but most of that 154 is renaming noise, not missing content.
| Bucket |
Raw |
Real gap after checking |
Unity feature docs (*-code / *-feature-overview) |
43 |
~1. Unity covers these under renamed paths (inventory 3 pages, content 4, stats 2, leaderboards, stores, tournaments, chat, groups, mail, announcements, events, cloud save, notifications, virtual currency all present). The exception is Parties — zero Unity pages |
| CLI reference |
53 |
~0. Auto-generated and present under nested paths. Includes 20 cli-federation-local-settings-*-ifederatedgameserver-N pages that are ReadMe pagination artifacts of one command |
| Third-party integration pages |
23 |
~23. The largest genuine gap — see below |
| Business / operations content |
~6 |
~6. best-practices (actually "Best Practices for Pricing"), support-tiers, security-overview, performance-scalability-overview, publishing, distributing |
| API reference |
8 |
8. signed-requests plus 7 basic/notification routes. Addressed by publishing api/v1.0 — see the linked issue |
| Legacy migration guides |
2 |
Judgment call. unity-sdk-migration-process (1.19→2.0) and migration-unity-from-2x-to-30 are almost certainly droppable |
| ReadMe artifacts |
3 |
Zero. page-not-found, a /discuss link, a license page |
The third-party integration pages cover engine plugins, hosting and matchmaking providers, analytics tools, and blockchain integrations. Grep finds only passing mentions inside other pages — no dedicated page for any of them on any branch. Scope for this category is a product decision being handled outside this repo; porting should not start before it is settled, and it is the single biggest unknown in this effort.
Extraction is easy
ReadMe is authored in its own CMS and is not fed from GitHub, so there is no git source for the legacy content. But llms.txt gives a complete page index and appending .md to any URL returns clean Markdown with updatedAt frontmatter. Verified: https://beamable2.readme.io/reference/signed-requests.md → 5 KB of Markdown. A shell loop is sufficient; no scraper needed.
The updatedAt field is the triage signal worth harvesting first. signed-requests reads 2025-11-11 — three weeks after the commit that drafted its replacement on api/v1.0 — so "which copy is newer" has to be checked per page rather than assumed.
The legacy content model, for reference
Legacy descriptions carry tags like [IDEN-Apple-03], [ECON-Stores-06], [SOCL-Chat-02], [LIVE-Mail-02], [PROF-CloudSave-01], [DVTL-Admin-02] — a domain × artifact matrix (Identity / Economy / Social / LiveOps / Player Profile / Developer Tools, crossed with 01 Overview, 02 Guide, 03 Code). Useful when deciding where a ported page belongs.
Work beyond content parity
Parity is necessary but not sufficient. Sunsetting also needs:
- ReadMe-side redirects to the
help.beamable.com equivalents, or at minimum noindex
- The marketing site's docs link repointed
- The new site's own canonical tags fixed — they currently point at
beamable.github.io, not help.beamable.com (filed separately)
- A scoping decision on the third-party integration pages (tracked offline)
- A home for the version-independent content — see the "product lane" discussion in the comments
Ownership
The takedown itself is a one-way door with marketing implications and needs Vitor's sign-off, and probably someone on the commercial side for the pricing and support-tier pages and for the third-party integration scoping. This issue exists to make the work visible and triage-able, not to commit to a date.
docs.beamable.com— the pre-migration ReadMe.io site — is still fully live, still the only documentation the marketing site links to, and still the search-canonical copy. The MkDocs migration thathistory/readme-io-to-mkdocs-conversion-manual.mdonmaindescribes was completed as a content exercise and never as a decommission exercise.Current state
docs.beamable.comreturns 200 across the board;robots.txtisAllow: /<link rel="canonical" href="https://beamable2.readme.io/...">, so search engines are told the ReadMe copy is authoritativellms.txtindex — an explicit invitation for AI assistants to read the legacy docs, including "Append .md to any documentation page URL to get its markdown version"beamable.comlinks only todocs.beamable.com. The homepage and every page sampled point atdocs.beamable.com/docs/beamable-overview. Nothing on the marketing site links tohelp.beamable.comContent parity: what is actually missing
Slug-matched the 316 legacy pages against every live branch, then hand-checked the buckets. 162 have a clear counterpart; 154 did not match — but most of that 154 is renaming noise, not missing content.
*-code/*-feature-overview)cli-federation-local-settings-*-ifederatedgameserver-Npages that are ReadMe pagination artifacts of one commandbest-practices(actually "Best Practices for Pricing"),support-tiers,security-overview,performance-scalability-overview,publishing,distributingsigned-requestsplus 7basic/notificationroutes. Addressed by publishingapi/v1.0— see the linked issueunity-sdk-migration-process(1.19→2.0) andmigration-unity-from-2x-to-30are almost certainly droppablepage-not-found, a/discusslink, a license pageThe third-party integration pages cover engine plugins, hosting and matchmaking providers, analytics tools, and blockchain integrations. Grep finds only passing mentions inside other pages — no dedicated page for any of them on any branch. Scope for this category is a product decision being handled outside this repo; porting should not start before it is settled, and it is the single biggest unknown in this effort.
Extraction is easy
ReadMe is authored in its own CMS and is not fed from GitHub, so there is no git source for the legacy content. But
llms.txtgives a complete page index and appending.mdto any URL returns clean Markdown withupdatedAtfrontmatter. Verified:https://beamable2.readme.io/reference/signed-requests.md→ 5 KB of Markdown. A shell loop is sufficient; no scraper needed.The
updatedAtfield is the triage signal worth harvesting first.signed-requestsreads2025-11-11— three weeks after the commit that drafted its replacement onapi/v1.0— so "which copy is newer" has to be checked per page rather than assumed.The legacy content model, for reference
Legacy descriptions carry tags like
[IDEN-Apple-03],[ECON-Stores-06],[SOCL-Chat-02],[LIVE-Mail-02],[PROF-CloudSave-01],[DVTL-Admin-02]— a domain × artifact matrix (Identity / Economy / Social / LiveOps / Player Profile / Developer Tools, crossed with 01 Overview, 02 Guide, 03 Code). Useful when deciding where a ported page belongs.Work beyond content parity
Parity is necessary but not sufficient. Sunsetting also needs:
help.beamable.comequivalents, or at minimumnoindexbeamable.github.io, nothelp.beamable.com(filed separately)Ownership
The takedown itself is a one-way door with marketing implications and needs Vitor's sign-off, and probably someone on the commercial side for the pricing and support-tier pages and for the third-party integration scoping. This issue exists to make the work visible and triage-able, not to commit to a date.