-
Notifications
You must be signed in to change notification settings - Fork 0
apps website
Active contributors: elwina
Capto's product landing page is a single static HTML file, website/index.html, with no build step. The same folder is deployed to both GitHub Pages and Cloudflare Pages, so one page serves the full marketing surface.
The page tells a first-time visitor what Capto is (an ultra-light, purely local Windows screen recorder) and points them at downloads and sources. Content is bilingual (English and a simplified-Chinese default) with a small inline language switcher, the brand colors are intentionally Capto purple.
The whole site lives in one file: CSS and the tiny inline JavaScript (a language toggle and an architecture-aware download link, website/index.html) are embedded in index.html. There is no bundler, no framework, and no generated dist folder. The page is served as-is by whatever host it lands on.
Content themes:
- Product, capture modes (display / window / region), MP4 with NVENC / QSV / AMF / libx264 fallback, GIF, overlays (click highlights, keystrokes, webcam PiP, cursor toggle).
-
Download links, a
#downloadsection with x64 and ARM64 NSIS installer buttons, callinggithub.com/elwina/Capto/releases/download/v1.0.0/Capto_1.0.0_(_arch_)-setup.exe. A smallRELEASESobject in the inline script lets the page pick the ARM64 asset based onuserAgent. -
Agent integrations, a feature block highlighting the JSON control plane, stable exit codes, and
capto-agent-skill, so AI agents can run adoctor → record → stoploop.
Two active hosts with the same website/ content, detailed in Deployment and docs/CI.md:
-
GitHub Pages (
https://elwina.github.io/Capto/), driven by.github/workflows/pages.ymlon every push tomain(or manually). It deploys one artifact: the landing page at the site root plus the workspace rustdoc under/docs/.pages.ymlis the only workflow allowed to write thegithub-pagesenvironment. -
Cloudflare Pages (
https://capto.elwina.work/primary,capto.pages.devfallback), driven by the Cloudflare dashboard Git integration, not a workflow, so no Cloudflare token secret is needed. The project's root directory is set towebsite/so the monorepo is not deployed as a whole.
Cloudflare Pages is the primary entry; GitHub Pages stays as a fallback if Cloudflare is unreachable.
| File | Purpose |
|---|---|
website/index.html |
The entire landing page (structure, styles, inline JS) |
website/README.md |
How to open the page locally and where it deploys |
.github/workflows/pages.yml |
GitHub Pages deployment + rustdoc |