Repository navigation
A landing page for Hyperpoint, and a skill that manages its config - #25
Merged
Merged
Conversation
A static page in site/, designed with elayadesign's landing-page-design and design-to-motion skills. The hero shows the real menu bar menu, four cards act out the reconnect, the hyper key, the speed curve and Add Rule, and the proof is the owner's config. Includes a 404, a privacy page, an og.png drawn by og.py, and a launch config to preview it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The v0.1.1 DMG is 1.2 MB and the app inside it 3.3 MB. The size replaces the version in both proof lines, gets a proof fact and an FAQ answer, and the proof grid gains a sixth fact, the missing Dock icon, to stay even. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From comments on the preview: the nav lockup goes from 20 to 28 px tall, and the Before column names the hyper key rather than Caps Lock. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From a comment on the preview: the 2.4G mouse is the owner's own, so the mouse-keys example is now the number keys a Naga's side buttons type. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From comments on the preview: the heading sat beside a tall stack of facts, so the section is now heading, config, then the facts three across. The notarized fact (still in both proof lines) gives way to one saying the config is plain JSON an agent can edit, which the app applies on save. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
skills/hyperpoint-config teaches an agent the config format and every rule ConfigCodec enforces, and how to find a device, back up, check, save and confirm from the app's log that the change took. Its check_config.py rejects a file at the same path the app would, and scripts/check-config-skill.py holds it to the parser's 60 invalid-file tests. The README says how to install it; the landing page links it from the agents fact and a new FAQ answer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The site is now a static-assets Worker, hyperpoint-site, set up with the cf CLI. The served files move to site/public, which wrangler.config.ts names as the assets, so the README and og.py stay out of the upload. cloudflare.config.ts holds the account, the custom domain and 404-page handling. The page gets a canonical URL and an absolute og:image. .github/workflows/site.yml dry-runs the build on pull requests that touch site/ and deploys on pushes to main, which needs a CLOUDFLARE_API_TOKEN repository secret. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GitHub Actions cannot run jobs on this account right now, and Workers Builds needs no API token in the repository. The workflow loses its deploy step and its push trigger and only checks that pull requests build. site/.node-version pins Node 24 for both, which cf needs at 22.18 or later. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Workers Builds will build pushes to main as production and every other branch as a Worker Preview, so the Worker turns on preview URLs, which workers.dev serves with X-Robots-Tag: noindex. Production stays on hyperpoint.progremir.dev alone with workersDev off. The site check workflow goes; Cloudflare's builds cover it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The project is now created in Cloudflare's dashboard as "hyperpoint", which Workers Builds requires to match the config's Worker name. The README drops the hand-deploy steps: Git builds do all deploys. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
site/: a static landing page (HTML, CSS and JS, no build step), designed with elayadesign'slanding-page-designanddesign-to-motionskills.StatusMenu.swiftandMenuPresentation.swift. Its rows load in when the page opens.SpeedCurve.default, measured wheel bands fromCurveGraph.swift); and Add Rule lands a new rule.FAQPageschema, a 404 page, a privacy page, anog.pngdrawn bysite/og.py, and favicons copied fromdesign/logo/..claude/launch.jsonadds asitepreview server on port 4319.Live at https://hyperpoint.progremir.dev, deployed by hand from this branch with
cf deploy.hyperpoint-site, and the served files live insite/public.cloudflare.config.tsholds the account, the custom domain and the 404-page handling.mainthat touchessite/, once the repository is connected in the Cloudflare dashboard..github/workflows/site.ymlonly dry-runs the build on PRs that touchsite/.skills/hyperpoint-config/: a skill people can install so Claude Code, or any agent that readsSKILL.md, can manage~/.config/hyperpoint/config.json.ConfigCodecenforces. It also covers how to find a device's IDs and HID++ controls in the app's log, and how to back up, check, save and confirm the change took.scripts/check_config.pyrejects a bad file at the same path the app would. The app only shows a rejected file's error path in its menu, so an agent can't see it there.scripts/check-config-skill.py(repo root) runs the checker against the 60 invalid files inConfigCodecTestsand the documented example. If a parser change isn't mirrored in the checker, this script fails. The README lists it under Development.Why
Hyperpoint needed a page that says what it does and links the download. And the config is plain JSON that the app applies on save, so an agent can safely manage it, as long as it knows the rules and can check its work.
For the reviewer
releases/latest, and the page's skill links point atmain. Both only work for people with access to the repository while it is private.sitecheck fails on this PR because GitHub won't start Actions jobs until the account's billing is fixed. It never ran, so it says nothing about the code.KeyRoutesuggest they are carried out, so that text may be out of date.🤖 Generated with Claude Code