Company website at https://elizaresearch.ai. The senior independence study is at https://elizaresearch.ai/study/ and https://seniorstudy.org. The seniorstudy.org root serves the study without changing its visible URL.
Static HTML with local images and fonts, plus a Worker for contact-form delivery. No application build or framework dependencies.
Use Bun 1.3.14 and Node 24.15.0.
bun install --frozen-lockfile
bun test
bun run preview
bun run deploy:checkPreview runs on http://localhost:4173 using Cloudflare's local assets server, including _headers behavior.
Only public/ is deployed; tooling and operational documentation remain outside the served directory.
bun run deploy updates the existing Cloudflare Worker elizaresearch and its custom domains elizaresearch.ai and seniorstudy.org. Keep the existing account and Worker; repository migration does not require domain registration, nameserver, or email DNS changes.
GitHub Actions checks pull requests and main pushes. The Deploy workflow is manually dispatched from main, repeats the checks, and uses the production environment. Configure its CLOUDFLARE_API_TOKEN secret and CLOUDFLARE_ACCOUNT_ID variable before running it. Use a Cloudflare deployment token scoped to the owning account and required Worker/domain permissions for both zones. Never commit credentials.
For attended deployment, authenticate with bunx wrangler login, then run bun run deploy from a clean, tested checkout of this repository. Record the source commit and returned deployment version in the release record. To roll back, use bunx wrangler rollback <previous-version-id> after checking the version with bunx wrangler deployments list.
bun run mail:security audits live DNS. See MAIL-SECURITY.md for the operational runbook; its historical observations are not a current DNS attestation.
Extracted from elizaOS/eliza, directory packages/elizaresearch, at commit a2665f15af93dcb56434081b7cc4825d8cc243e7.
The available history from the source checkout's shallow boundary is retained; older history remains in the original repository.
Migration tracking: elizaOS/eliza#31444.
The seven-slide senior independence deck lives in deck/public/ and is deployed independently at https://deck.elizaresearch.ai using the elizaresearch-deck Worker.
bun run deck:preview— preview at http://localhost:4184.bun run deck:deploy:check— validate slide structure, assets, JavaScript, and Worker configuration.bun run deck:deploy— deploy only the deck and its custom subdomain.
Navigation supports arrow keys, Space, Page Up/Down, Home/End, desktop edge clicks, horizontal touch swipes, and two arrow buttons floating at the bottom right. Each slide has a stable hash URL. Dense slides scroll vertically on small screens. Inactive slides are inert and hidden from assistive technology. Reduced-motion and landscape print layouts are included.
The Deploy deck GitHub workflow uses the existing production environment credentials and verifies that all deployed assets match the source files. For attended deployment, the existing Wrangler login can be used. The root company website has a separate Worker/configuration. See deck/SOURCE.md for reference provenance and deck/RELEASE.md for verification.
POST /api/study-contact validates submissions and sends through the Cloudflare
STUDY_EMAIL binding, restricted to study@elizaresearch.ai. The study inbox
forwards to Shaw and Camilla through Google Workspace, the existing mail host.
The sender domain must be enabled and its DNS configured in Cloudflare Email
Service. No third-party mail API key is needed.
The form reports delivery errors and offers a phone fallback. A honeypot filters simple bots without sending a message. The company homepage and study page have separate paths; the seniorstudy.org root serves the study through the same Worker.
Adapted from elizaOS/eliza PR #31359, commit
955f20c2794c1fa7bfd55532d8a6e095d192bf18 (Camilla Castro).
The deck includes Open Graph and large-image Twitter cards plus oEmbed discovery at https://deck.elizaresearch.ai/oembed.json (link type). The 1200×630 share preview is deck/public/assets/senior-independence-preview.png; its vector source is deck/share-preview.svg.