test
This commit is contained in:
1 parent
0c2b4e7df2
commit
e652b54319
11 files changed
+202
-12
No files matched your search
@@ -23,7 +23,7 @@ npm run check # Astro + TypeScript check
|
||||
| `src/data/team.ts` | Team members, roles, portraits, links. |
|
||||
| `src/content/insights/*.md` | Insights posts (content collection). Front matter: title, date, lang, category, readingTime, author, cover. |
|
||||
| `src/components/home/*` | One file per home section, in page order: Hero, Manifesto, Method (with `MethodDiagram`), Stages (with `GridObject`), Sectors, Proof, Quote, Insights, Contact. |
|
||||
| `src/components/home/GridObject.astro` | The four wireframe objects on the stage cards (sphere, cube, plane, wave). Geometry is computed at build time; single stroke in `--ink`. |
|
||||
| `src/components/home/GridObject.astro` | The wireframe objects on the stage and product cards (sphere, cube, plane, wave, steps, nested, stack). Geometry is computed at build time; single stroke in `--ink`. Each drawing is laid out by hand, so the `viewBox` is derived from the points as they are emitted, not assumed: a square centred on the drawing, padded for the stroke. A new kind can therefore never be clipped, and the card gives the drawing the flexible row so it sits centred between title and body. |
|
||||
| `src/components/home/MethodDiagram.astro` | The four-stage loop, wide and tall compositions. Labels come from `ui.method.stages`. |
|
||||
| `src/components/verifier/*` | The CipherVerifier product page, in page order: Hero (line burst), Intro (image band), HowItWorks (five group cards, one schematic each; on wide screens the heading is sticky and the cards stack under it as you scroll), Cards, Facts, Outro. |
|
||||
| `src/components/verifier/diagrams.ts` | The five schematics as data: a hand-placed wide layout and an auto-generated tall spine per group. `Schematic.astro` renders either. Labels come from `ui.verifier.how.groups`; the tuple shape is in `types.ts`. Every element carries the `group` of the node it belongs to, which drives the hover focus and the draw-in order. |
|
||||
@@ -32,6 +32,7 @@ npm run check # Astro + TypeScript check
|
||||
| `src/pages/_*.astro` | Shared page bodies. `index.astro` and `de/index.astro` render `_Home.astro` with a `lang` prop, and so on. |
|
||||
| `src/assets/images/` | Source images. Astro emits AVIF with a WebP fallback and explicit dimensions. |
|
||||
| `public/fonts/` | Self-hosted Inter Tight variable (latin, latin-ext). |
|
||||
| `public/video/` | The home hero's background loop, MP4 and WebM. Shipped as-is; Astro does not process video. |
|
||||
|
||||
## Routes
|
||||
|
||||
@@ -52,6 +53,28 @@ Create `src/content/insights/<slug>.md` with the front matter used in `xg-aloe-u
|
||||
Put the cover image in `src/assets/images/` and reference it with a relative path.
|
||||
The three newest posts appear on the home page automatically.
|
||||
|
||||
## The hero video
|
||||
|
||||
The home hero plays `public/video/hero-plant.mp4` / `.webm` behind the headline, over the
|
||||
`plant-at-dusk.jpg` still. The still is the video's own first frame, so it carries the hero until
|
||||
the video is ready and stays put for anyone who never gets one.
|
||||
|
||||
The video is only fetched when it will be seen: not under `prefers-reduced-motion`, not on
|
||||
`saveData`, and not below 48rem, where a 21:9 frame would be cropped to a sliver for the most
|
||||
expensive bytes. The sources are attached by script rather than in the markup, so nothing is
|
||||
requested otherwise. A blocked autoplay also just leaves the still in place.
|
||||
|
||||
The source clip was generated with Magnific (Kling 2.5, 10 s, from the hero still as its start
|
||||
frame, https://www.magnific.com/app/creation/5jPaI3qKxe). `scripts/encode-hero-video.sh` turns a
|
||||
clip into the looping file: it plays forward, then backward, so the loop point cannot be seen, and
|
||||
encodes 1920-wide H.264 and VP9. A 20-second loop lands at 862 KB and 472 KB. To replace it:
|
||||
|
||||
```sh
|
||||
FFMPEG=/path/to/ffmpeg ./scripts/encode-hero-video.sh source.mp4 public/video/hero-plant 1920
|
||||
```
|
||||
|
||||
Keep the first frame of any replacement equal to `plant-at-dusk.jpg`, or replace both together.
|
||||
|
||||
## Imagery
|
||||
|
||||
The mast at dusk (`mast-at-dusk.jpg`) is the one documentary photograph from the old site; it
|
||||
|
||||
Reference in new issue
Block a user