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
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,21 @@ Problem records deliberately leave `http_statuses`, `retryable`,
curated value. Clients should use the RFC 9457 response body, especially
`code`, `status`, and `detail`, for request-specific behavior.

## Site design

Human pages share one stylesheet and self-hosted font subsets (Public Sans,
IBM Plex Mono) kept in `src/assets/`, following the registrystack.org design
system. They are publisher-owned presentational machinery, not identifiers:
`npm run import:catalog` never touches them, the build copies them to
`public/assets/`, and the stylesheet is served under a content-hashed
filename so it can cache safely. The OFL font licenses are kept beside the
fonts in `src/assets/fonts/`.

HTML pages carry `noindex`: the resolver is reached by following identifiers
from responses and documentation, not by search, and human explanations stay
with the product docs. Machine artifacts, catalogs, and `llms.txt` are
unaffected.

## Local workflow

Import the catalog and artifacts from an exact Registry Stack commit:
Expand Down
103 changes: 74 additions & 29 deletions public/404.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,40 +4,85 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Identifier not found | Registry Stack identifiers</title>
<style>
:root { color-scheme: light dark; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body { margin: 0; padding: 2rem; line-height: 1.55; max-width: 62rem; }
main { display: grid; gap: 1rem; }
h1 { margin: 0; font-size: clamp(2rem, 5vw, 3rem); line-height: 1.05; }
h2 { margin-top: 2rem; }
p { margin-block: 0.5rem; }
code { font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; }
pre { overflow: auto; padding: 1rem; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); }
a { color: LinkText; }
table { border-collapse: collapse; width: 100%; }
th, td { border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent); padding: 0.5rem; text-align: left; vertical-align: top; }
th { width: 12rem; }
.lede { font-size: 1.125rem; }
.notice { border-inline-start: 0.25rem solid color-mix(in srgb, currentColor 35%, transparent); padding: 0.75rem 1rem; background: color-mix(in srgb, currentColor 6%, transparent); }
</style>
<meta name="description" content="This path is not a registered Registry Stack identifier.">
<meta name="robots" content="noindex">
<link rel="icon" href="/assets/favicon.svg" type="image/svg+xml">
<link rel="stylesheet" href="/assets/site.af73d05e9347816d.css">
</head>
<body>
<main>
<header class="site-header">
<a class="brand" href="https://registrystack.org/">
<span class="brand-mark" aria-hidden="true">RS</span>
<span>Registry Stack<span class="brand-site">Identifiers</span></span>
</a>
<nav class="top-nav" aria-label="Identifier catalogs">
<a href="/problems/">Problems</a>
<a href="/namespaces/">Namespaces</a>
<a href="/schemas/">Schemas</a>
<a href="/contexts/">Contexts</a>
<a href="/profiles/">Profiles</a>
<a href="/vocabularies/">Vocabularies</a>
<a class="nav-emphasis" href="https://docs.registrystack.org/">Documentation</a>
</nav>
</header>
<main>
<section class="hero">
<div class="hero-inner">
<p class="eyebrow">Not found</p>
<h1>Identifier not found</h1>
<p class="lede">This path is not a registered Registry Stack identifier.</p>
<p class="hero-lead">This path is not a registered Registry Stack identifier.</p>
</div>
</section>
<div class="record">
<section class="notice" aria-labelledby="authority">
<h2 id="authority">Authority Boundary</h2>
<p class="notice-title" id="authority">Authority boundary</p>
<p>This site publishes the current Registry Stack identifiers from a digest-bound source catalog. Product source and the actual service response remain authoritative for runtime behavior.</p>
</section>
<p>Browse the published identifiers:</p>
<ul>
<li><a href="/problems/">Problem types</a></li>
<li><a href="/namespaces/">Namespaces</a></li>
<li><a href="/schemas/">Schemas</a></li>
<li><a href="/contexts/">Contexts</a></li>
<li><a href="/profiles/">Profiles</a></li>
<li><a href="/vocabularies/">Vocabularies</a></li>
</ul>
</main>
<section aria-labelledby="catalogs">
<h2 id="catalogs">Browse the published identifiers</h2>
<ul class="doc-list">
<li><a href="/problems/">Problem types</a></li>
<li><a href="/namespaces/">Namespaces</a></li>
<li><a href="/schemas/">Schemas</a></li>
<li><a href="/contexts/">Contexts</a></li>
<li><a href="/profiles/">Profiles</a></li>
<li><a href="/vocabularies/">Vocabularies</a></li>
</ul>
</section>
</div>
</main>
<footer class="site-footer">
<div class="site-footer-inner">
<div class="footer-brand">
<a class="footer-brand-name" href="https://registrystack.org/">Registry Stack</a>
<p>Stable machine identifiers for Registry Stack products, published from a digest-bound source catalog.</p>
</div>
<nav class="footer-nav" aria-label="Footer">
<div class="footer-col">
<p class="footer-col-title">Catalogs</p>
<ul>
<li><a href="/problems/">Problem types</a></li>
<li><a href="/namespaces/">Namespaces</a></li>
<li><a href="/schemas/">Schemas</a></li>
<li><a href="/contexts/">Contexts</a></li>
<li><a href="/profiles/">Profiles</a></li>
<li><a href="/vocabularies/">Vocabularies</a></li>
</ul>
</div>
<div class="footer-col">
<p class="footer-col-title">Registry Stack</p>
<ul>
<li><a href="https://registrystack.org/">Main website</a></li>
<li><a href="https://docs.registrystack.org/">Documentation</a></li>
<li><a href="https://github.com/registrystack/registry-stack">GitHub</a></li>
</ul>
</div>
</nav>
</div>
<div class="site-footer-base">
<p>Machine index: <a href="/index.json">index.json</a> &middot; <a href="/llms.txt">llms.txt</a></p>
<p><a href="https://registrystack.org/">registrystack.org</a></p>
</div>
</footer>
</body>
</html>
3 changes: 3 additions & 0 deletions public/_headers
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
X-Content-Type-Options: nosniff
Referrer-Policy: no-referrer

/assets/*
Cache-Control: public, max-age=86400

/index.json
Content-Type: application/json; charset=utf-8
Access-Control-Allow-Origin: *
Expand Down
6 changes: 6 additions & 0 deletions public/assets/favicon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading