Skip to content

docs: add an indexable landing page served from docs/ - #6

Merged
gridboy merged 2 commits into
mainfrom
docs/landing-page
Aug 11, 2026
Merged

gridboy merged 2 commits into
mainfrom
docs/landing-page

Conversation

@gridboy

@gridboy gridboy commented Aug 11, 2026

Copy link
Copy Markdown
Owner

What this changes

Adds a landing page at docs/index.html, ready to serve via GitHub Pages from the docs/ folder, plus robots.txt, sitemap.xml and .nojekyll.

Why

The project is an archive meant to be found and read. A repository README is not indexable as a page with its own title, description and structured data; this is.

For search engines: title and meta description, canonical URL, Open Graph and Twitter card tags, JSON-LD SoftwareSourceCode naming Robert Pointon as author and libfreenect as the basis, semantic heading structure, descriptive alt text, robots.txt and sitemap.xml.

For readers: what the app does, whose work it is and what that means for reuse, what was fixed since 2010 with the measured numbers, and the real build situation — Intel builds, Apple Silicon needs libusb rebuilt.

The page is derived from the source rather than decorated around it. Its colour ramp is the app's own depth colormap, regenerated with the formula from GLView.m. That also surfaces something true about the code: the cubic gamma spends the entire visible spectrum by depth value ~1150 and clips everything past it to black, which is why the app carries near and far clipping controls.

Weight

No external requests — no web fonts, no CDN, no analytics. Typography uses system font stacks. The screenshot is served as WebP at 126 KB with the original 353 KB JPEG as a fallback; the JPEG is deliberately left unrecompressed as the archival capture, and because Open Graph scrapers handle WebP poorly.

How it was verified

  • sh scripts/syntax-check.sh passes (no source changes)
  • Colour ramp values computed from the algorithm in GLView.m, not eyeballed
  • WebP compared against the original at full size — mesh detail preserved
  • Rendered in a browser at multiple widths

The last one is worth doing before enabling Pages. The page is responsive by construction, respects keyboard focus, and has no motion to disable, but it has not been opened in a browser here.

After merging

GitHub Pages needs enabling: Settings → Pages → Deploy from a branch → main / docs. The canonical URL in the page assumes https://gridboy.github.io/cocoa_kinect/.

Provenance

  • No third-party licence header, copyright notice, CONTRIB or AUTHORS file altered
  • No new vendored code

A single self-contained page for GitHub Pages. No external requests: fonts come from
system stacks, and the only assets are the screenshot and the page itself.

For search: title and meta description, canonical URL, Open Graph and Twitter card
tags, JSON-LD SoftwareSourceCode describing the project and crediting the original
author, semantic headings, descriptive alt text, plus robots.txt and sitemap.xml.

The page is built from the source rather than around it. The colour ramp it shows is
the app's own depth colormap, regenerated with the formula from GLView.m - which is
also how the page can point out that the cubic gamma spends the whole spectrum by
depth value ~1150 and clips everything beyond it to black, the reason the app carries
clipping controls at all.

The screenshot is served as WebP (126 KB) with the original JPEG (353 KB) as fallback.
The JPEG is kept unrecompressed as the archival capture and for Open Graph scrapers,
which handle WebP poorly.
…d sizing

The tick labels inherited the paragraph reading measure while the ramp itself spanned
the container, so the depth values sat under the wrong colours - on a page whose point
is that the ramp is faithful.

Also sets min-width:0 on the comparison table and its grid parent. Grid items default
to min-width:auto, so a table with a min-width can refuse to shrink and widen the page.
Measured before and after: no horizontal overflow at 320px or 390px either way, so this
is a guard rather than a fix.

Rendered headless at 390, 768 and 1280 while checking.
@gridboy
gridboy merged commit 111906a into main Aug 11, 2026
1 check passed
@gridboy
gridboy deleted the docs/landing-page branch August 11, 2026 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant