The official landing page for Parley. It's a zero-build static site — plain HTML, CSS, and a little vanilla JS — so it has no dependencies and deploys anywhere that can serve files.
website/
index.html # the page
styles.css # all styling (brand gradient, dark theme, responsive)
script.js # nav, scroll-reveal, copy button, media auto-loading
assets/ # logo + your showcase GIFs/screenshots go here
Any static server works:
cd website
python3 -m http.server 4178
# open http://localhost:4178The page has marked media slots (the hero window and the three "Showcase"
rows). You don't need to edit any HTML — just drop a file into assets/
with the matching name and it appears automatically:
| Slot | Drop a file named |
|---|---|
| Hero window | assets/showcase-hero.{gif,png,jpg,webp,mp4} |
| "Every word, attributed" | assets/showcase-transcript.{gif,png,jpg,webp,mp4} |
| "Ask mid-conversation" | assets/showcase-qa.{gif,png,jpg,webp,mp4} |
| "Insight that keeps up" | assets/showcase-eval.{gif,png,jpg,webp,mp4} |
| "Voice typing" | assets/showcase-voicetyping.{gif,png,jpg,webp,mp4} |
Notes:
.mp4is detected too and mounts as a muted, looping, autoplaying clip — often smaller and crisper than a GIF for screen recordings.- Slots are
16:9(hero) /16:10(rows); media isobject-fit: cover. Record at roughly those ratios for the cleanest fit. - Until you add a file, each slot shows a styled placeholder telling you the exact filename to use.
To add a brand-new slot, copy a data-media="..." figure block in index.html
and pick a new name.
A workflow at .github/workflows/deploy-website.yml
publishes this folder automatically.
- In the repo: Settings → Pages → Build and deployment → Source: GitHub Actions.
- Push to
main(any change underwebsite/) — the workflow builds and deploys. You can also run it manually from the Actions tab (Deploy website). - The default URL will be
https://pathorsai.github.io/parley/.
The site is served at parley.tw (apex) via GitHub Pages + Cloudflare DNS.
To reproduce or move it:
-
Tell GitHub the domain. Create
website/CNAMEcontaining just the hostname, e.g.:parley.tw(Or set it under Settings → Pages → Custom domain, which creates the same file. Keeping it in
website/means the Actions deploy preserves it.) -
Add the DNS record in Cloudflare (DNS → Records):
- Apex/root (
parley.tw, current setup): addCNAME@→pathorsai.github.io(Cloudflare flattens this automatically), or use GitHub's four A records:185.199.108.153,185.199.109.153,185.199.110.153,185.199.111.153. - Subdomain (e.g.
parley): add aCNAMErecordparley→pathorsai.github.io.
- Apex/root (
-
Proxy + SSL. You can leave the record Proxied (orange cloud). Set Cloudflare SSL/TLS → Overview → Full (not Flexible — Flexible causes redirect loops with Pages). Then in GitHub Settings → Pages, wait for the domain check to pass and tick Enforce HTTPS.
-
Give DNS a few minutes to propagate, then load your domain.
Tip: if you use a subdomain and proxy through Cloudflare, GitHub's HTTPS certificate provisioning can take up to ~24h the first time. If "Enforce HTTPS" is greyed out, set the Cloudflare record to DNS only (grey cloud) until GitHub issues the cert, then flip it back to Proxied.