Public marketing site for Forkly — the multi-tenant menu platform for hospitality venues.
| Host | Role |
|---|---|
| forkly.com.au | Marketing site (canonical) |
| www.forkly.com.au | Same site |
| app-uat.forkly.com.au | Venue admin app (UAT) |
CTAs (“Get started”, “Start free trial”) link to the UAT app. Contact / demo
use hello@forkly.com.au. URLs are centralised in src/config.js and can be
overridden with VITE_* env vars (see .env.example).
| Layer | Technology |
|---|---|
| UI | React 19 |
| Build / dev | Vite 6 |
| Styling | CSS (product design tokens) |
Design tokens match the product app (forkly-app/frontend/src/index.css): warm cream
backgrounds, terracotta accent #c45d3e, Playfair Display + DM Sans.
npm install
cp .env.example .env # optional — defaults already match AU hostsnpm run dev
# http://localhost:5174npm run build # output → dist/
npm run preview # serve the build locally (Vite)Deploy the dist/ folder to any static host that can serve both
forkly.com.au and www.forkly.com.au (Cloudflare Pages, Netlify, S3 + CDN,
nginx, GitHub Pages with custom domain).
Point both marketing hosts at the static host; point the app host at the UAT deployment:
| Record | Target |
|---|---|
forkly.com.au |
Marketing CDN / static host |
www.forkly.com.au |
Same (CNAME → apex or dual A/AAAA) |
app-uat.forkly.com.au |
UAT app (frontend + API as you deploy them) |
public/CNAME is set to forkly.com.au for GitHub Pages-style custom domains.
public/robots.txt and public/sitemap.xml declare the apex as canonical.
forkly-website/
index.html Vite entry + SEO meta (canonical → forkly.com.au)
package.json
vite.config.js
.env.example VITE_SITE_URL, VITE_APP_URL, …
public/ favicon, OG image, robots, sitemap, CNAME
src/
config.js site + app URL constants
main.jsx
App.jsx
index.css
assets/
components/