Public homepage, pricing, privacy, changelog, and SEO (#117)
Deploy Beta / unit-tests (push) Successful in 13s
Unit Tests / test (push) Successful in 12s
Deploy Beta / deploy-beta (push) Successful in 5m0s

## Summary
- Logged-out `/` is a public landing page. Signed-in `/` still opens chat.
- Adds `/pricing/`, `/privacy/`, and `/changelog/`, plus header and footer links.
- Primary path is **Create account** when registration is on, and an email **waitlist** when it is off.
- Titles, canonicals, Organization and Product JSON-LD, `sitemap.xml`, `robots.txt`, and `llms.txt`.
- Usage counts render only from `GET /api/public/usage/`. No avatars. No founder block. No testimonials.
- Closes #113, #114, #115, and #116.

Needs [chat_backend#75](https://git.aimloperations.com/ai_ml_operations/chat_backend/pulls) for the waitlist and usage API, and the server-infra crawler-file change so those root files are not the SPA shell.

The account and document numbers in the screenshots come from a local mock of the usage API, not production.

## Screenshots

### Landing, registration off
![Landing waitlist desktop](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/landing-desktop.png)

### Landing, mobile
![Landing mobile](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/landing-mobile.png)

### Landing, registration on
![Landing create account](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/landing-signup.png)

### Pricing
![Pricing](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/pricing.png)

### Privacy
![Privacy](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/privacy.png)

### Changelog
![Changelog](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/changelog.png)

### Sign in unchanged
![Sign in](https://git.aimloperations.com/ai_ml_operations/chat_web_app/raw/branch/feat/113-public-site/llm-fe/docs/ux/signin.png)

## Test plan
- [x] `react-scripts test` — 234 passed
- [ ] Incognito `/` shows the landing page, not Sign In
- [ ] Signed-in `/` still opens chat
- [ ] `/account/` still redirects to `/signin/` when logged out
- [ ] Waitlist POST and usage GET against the new API
- [ ] `/robots.txt`, `/sitemap.xml`, and `/llms.txt` return plain text, not HTML

Reviewed-on: #117
This commit was merged in pull request #117.
This commit is contained in:
westfarn committed 2026-10-17 08:15:02 -07:00
1 parent 1a434b208e
commit fa91c4969f
35 files changed
+1348 -11

No files matched your search

+42 -5
View File
@@ -8,11 +8,48 @@
<link rel="icon" type="image/png" sizes="16x16" href="%PUBLIC_URL%/favicon-16x16.png" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
<meta name="theme-color" content="#000000" />
<meta name="description" content="Hesychia — a calm AI assistant by AI ML Operations, LLC" />
<meta name="description" content="Hesychia is a calm AI assistant. Quiet, focused AI chat — private by default. $10/month from AI ML Operations, LLC." />
<meta name="application-name" content="Hesychia" />
<meta property="og:title" content="Hesychia" />
<meta property="og:description" content="Hesychia — quiet, focused AI chat at hesychia.ai" />
<meta property="og:url" content="https://hesychia.ai" />
<link rel="canonical" href="https://hesychia.ai/" />
<meta property="og:type" content="website" />
<meta property="og:title" content="Hesychia — quiet, focused AI chat" />
<meta property="og:description" content="Hesychia is a calm AI assistant. Quiet, focused AI chat — private by default. $10/month." />
<meta property="og:url" content="https://hesychia.ai/" />
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Hesychia",
"url": "https://hesychia.ai/",
"logo": "https://hesychia.ai/apple-touch-icon.png",
"parentOrganization": {
"@type": "Organization",
"name": "AI ML Operations, LLC",
"url": "https://www.aimloperations.com"
}
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Hesychia",
"applicationCategory": "BusinessApplication",
"operatingSystem": "Web",
"url": "https://hesychia.ai/",
"description": "A calm AI assistant. Quiet, focused AI chat — private by default.",
"offers": {
"@type": "Offer",
"price": "10.00",
"priceCurrency": "USD"
},
"provider": {
"@type": "Organization",
"name": "AI ML Operations, LLC",
"url": "https://www.aimloperations.com"
}
}
</script>
<link rel="apple-touch-icon" sizes="180x180" href="%PUBLIC_URL%/apple-touch-icon.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
@@ -28,7 +65,7 @@
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>Hesychia</title>
<title>Hesychia — quiet, focused AI chat</title>
</head>
<body>
+18
View File
@@ -0,0 +1,18 @@
# Hesychia
> Hesychia is a calm AI assistant. Quiet, focused AI chat — private by default.
Hesychia is a $10/month AI chat product from AI ML Operations, LLC. It stores your documents so answers can use your files, and company managers can manage team accounts. Conversation memory is a setting you control. Canceling a subscription does not delete documents. Account deletion is a soft-delete.
## Pages
- [Home](https://hesychia.ai/): what Hesychia is, who it is for, and how to start
- [Pricing](https://hesychia.ai/pricing/): $10/month, flat, no ads, no upsells
- [Privacy](https://hesychia.ai/privacy/): what is stored, what is not sold, what cancel does to documents
- [Changelog](https://hesychia.ai/changelog/): dated product updates
- [Terms of Service](https://hesychia.ai/terms_of_service/): the binding terms
- [Account deletion](https://hesychia.ai/account-deletion/): how to delete an account and what soft-delete keeps
## Operator
AI ML Operations, LLC — https://www.aimloperations.com
+14 -1
View File
@@ -1,3 +1,16 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:
Allow: /
Disallow: /signin/
Disallow: /signup/
Disallow: /account/
Disallow: /document_storage
Disallow: /feedback/
Disallow: /analytics/
Disallow: /password_reset/
Disallow: /password_reset_confirmation/
Disallow: /set_password/
Disallow: /auth/
Disallow: /billing/
Sitemap: https://hesychia.ai/sitemap.xml
+27
View File
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://hesychia.ai/</loc>
<lastmod>2026-10-17</lastmod>
</url>
<url>
<loc>https://hesychia.ai/pricing/</loc>
<lastmod>2026-10-17</lastmod>
</url>
<url>
<loc>https://hesychia.ai/privacy/</loc>
<lastmod>2026-10-17</lastmod>
</url>
<url>
<loc>https://hesychia.ai/changelog/</loc>
<lastmod>2026-10-17</lastmod>
</url>
<url>
<loc>https://hesychia.ai/terms_of_service/</loc>
<lastmod>2026-07-27</lastmod>
</url>
<url>
<loc>https://hesychia.ai/account-deletion/</loc>
<lastmod>2026-08-04</lastmod>
</url>
</urlset>