Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion scripts/verify-build.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ const REQUIRED_PAGES = [
'compatibility/index.html',
'is-it-for-me/index.html',
'donate/index.html',
// Not linked from anywhere, but Creem validates this URL -- so a build
// Only linked from the footer, but Creem validates this URL -- so a build
// that stops emitting it should fail rather than pass quietly.
'pricing/index.html',
// Exact casing matters: GitHub Pages is case-sensitive and this path is in
Expand Down
1 change: 1 addition & 0 deletions src/data/site.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ export const FOOTER_LINKS: readonly NavItem[] = [
{ href: '/faq/', label: 'FAQ' },
{ href: LINKS.webApp, label: 'Web App', external: true },
{ href: '/donate/', label: 'Donate' },
{ href: '/pricing/', label: 'Pricing' },
{ href: '/privacy.html', label: 'Privacy Policy' },
// Previously orphaned -- the document existed but nothing linked to it.
{ href: '/tos.html', label: 'Terms of Service' },
Expand Down
10 changes: 5 additions & 5 deletions src/pages/pricing/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
/*
* BlueBubbles Pro pricing.
*
* NOT PUBLIC YET. This route exists so that https://bluebubbles.app/pricing
* resolves for Creem's validation. It is deliberately undiscoverable:
* - not in NAV_LINKS or FOOTER_LINKS, so nothing on the site links to it;
* - noindex, so it stays out of search results if the URL leaks;
* NOT FULLY PUBLIC YET. Creem requires pricing to be reachable from the site,
* so it is linked from the footer (FOOTER_LINKS), but it is kept low-profile:
* - not in NAV_LINKS, so it is absent from the header;
* - noindex, so it stays out of search results;
* - excluded from the sitemap in astro.config.mjs.
*
* It is not listed in robots.txt on purpose -- a Disallow rule would publish
* the path to anyone who reads the file, which is the opposite of hiding it.
*
* To launch: add it to NAV_LINKS and/or FOOTER_LINKS in src/data/site.ts, drop
* To launch: add it to NAV_LINKS in src/data/site.ts, drop
* the `noindex` below, and remove the sitemap exclusion.
*/
import BaseLayout from '@layouts/BaseLayout.astro';
Expand Down
Loading