The index for the Facetworks organisation: ten multi-page Astro design sites, each in a different genre, and two browser GPU experiments.
Live: facetworks.signalizeai.org
Each project listed here is its own repository with its own visual identity and its own deployment. This site is deliberately quiet, because everything it points at is loud.
| Project | Genre | Live |
|---|---|---|
| Nebula | AI product | nebula.signalizeai.org |
| Vantage | Creative studio | vantage.signalizeai.org |
| Halcyon | Luxury audio | halcyon.signalizeai.org |
| Fable | Personal portfolio | fable.signalizeai.org |
| Pulse | Conference | pulse.signalizeai.org |
| Cellar | Natural wine bar | cellar.signalizeai.org |
| Ledger | Fintech | ledger.signalizeai.org |
| Atlas | Architecture studio | atlas.signalizeai.org |
| Frequency | Music artist | frequency.signalizeai.org |
| Sprout | Wellness app | sprout.signalizeai.org |
| Auralis | Real-time aurora | auralis.agentpostmortem.com |
| Mycelia | Agent simulation | mycelia.agentpostmortem.com |
The entire index is generated from one typed data file,
src/data/projects.ts. Adding a thirteenth project is a single
entry appended to the projects array:
{
slug: 'newthing',
name: 'Newthing',
genre: 'Whatever it is',
note: 'One line on what makes it different.',
stack: ['Astro', 'Tailwind v4'],
live: 'https://newthing.signalizeai.org',
collection: 'sites',
}The counts in the header, the section grouping, the numbering, and the repository links all derive from that array. No template edits are needed.
- Static-first. Every word is in the HTML. The only script is a reveal animation,
gated behind a
.jsclass added by an inline script, so with JavaScript disabled the page renders complete and in its final position. - Responsive, verified at 390px and 1280px with no horizontal scroll.
- Motion respects
prefers-reduced-motion. - Cached via
public/_headers:/_astro/*immutable,/must-revalidate.
npm install
npm run devnpm run format
npm run lint
npm run typecheck
npm run buildDeployed on Cloudflare Pages.
MIT. See LICENSE.