From 493746b14c1251a45b061d2e3edd9160c929d2b9 Mon Sep 17 00:00:00 2001 From: benj Date: Fri, 10 Apr 2026 11:13:34 +0800 Subject: a basic ui and landing web interface for tidyindex.com --- landing/data/urls.toml | 17 ++++++++++++++ landing/layouts/_default/baseof.html | 30 +++++++++++++++++++++--- landing/layouts/index.html | 4 ++-- landing/layouts/partials/dashboard-url.html | 14 +++++++++++ landing/layouts/partials/header.html | 2 +- landing/static/css/style.css | 29 +++++++++++++++++++++++ landing/static/fonts/fraunces-latin.woff2 | Bin 0 -> 67304 bytes landing/static/fonts/inter-latin.woff2 | Bin 0 -> 48256 bytes landing/static/fonts/jetbrains-mono-latin.woff2 | Bin 0 -> 31432 bytes 9 files changed, 90 insertions(+), 6 deletions(-) create mode 100644 landing/data/urls.toml create mode 100644 landing/layouts/partials/dashboard-url.html create mode 100644 landing/static/fonts/fraunces-latin.woff2 create mode 100644 landing/static/fonts/inter-latin.woff2 create mode 100644 landing/static/fonts/jetbrains-mono-latin.woff2 (limited to 'landing') diff --git a/landing/data/urls.toml b/landing/data/urls.toml new file mode 100644 index 0000000..4385afb --- /dev/null +++ b/landing/data/urls.toml @@ -0,0 +1,17 @@ +# Canonical cross-app URLs. Both the Hugo landing site and the SvelteKit +# dashboard read from this one file — don't hard-code these URLs anywhere +# else. Hugo loads this automatically into `site.Data.urls`; the dashboard +# reads it via a relative path at build time if/when it needs to. + +[dashboard] +# The SvelteKit UI ("API Key" app) — lives at web/ui in the repo. +prod = "https://ui.tidyindex.com" +# The UI's Vite dev server — see web/ui/vite.config.js. +# Hugo's own dev server lives on :1313, so the UI uses :5174 to +# avoid a collision when both are running locally. +dev = "http://localhost:5174" + +[landing] +# The marketing site you're reading this from. +prod = "https://tidyindex.com" +dev = "http://localhost:1313" diff --git a/landing/layouts/_default/baseof.html b/landing/layouts/_default/baseof.html index bab1b56..7cd776f 100644 --- a/landing/layouts/_default/baseof.html +++ b/landing/layouts/_default/baseof.html @@ -15,13 +15,37 @@ - - - + {{/* Preload the three self-hosted webfonts so the browser fetches + them in parallel with the CSS, not after it. */}} + + + + + {{/* Prevent FOUT: hide the body until webfonts are loaded, with a + 1500ms safety timeout so the page never stays blank forever. */}} + + {{ partial "header.html" . }} diff --git a/landing/layouts/index.html b/landing/layouts/index.html index a08109e..c37e66b 100644 --- a/landing/layouts/index.html +++ b/landing/layouts/index.html @@ -11,7 +11,7 @@ designed for humans, machines, and LLM agents alike.

- +

§ 04  ·  start

Ready when you are.

- +
Private beta - API Key → + API Key →
diff --git a/landing/static/css/style.css b/landing/static/css/style.css index 33ddc1b..1d4c46f 100644 --- a/landing/static/css/style.css +++ b/landing/static/css/style.css @@ -6,6 +6,35 @@ labels, hairline rules. ---------------------------------------------------------------- */ +/* ---------- self-hosted webfonts ---------- */ + +@font-face { + font-family: 'Fraunces'; + font-style: normal; + font-weight: 300 600; + font-display: swap; + src: url('/fonts/fraunces-latin.woff2') format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} + +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 400 600; + font-display: swap; + src: url('/fonts/inter-latin.woff2') format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} + +@font-face { + font-family: 'JetBrains Mono'; + font-style: normal; + font-weight: 400 500; + font-display: swap; + src: url('/fonts/jetbrains-mono-latin.woff2') format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215, U+FEFF, U+FFFD; +} + :root { --c-bg: #ffffff; --c-bg-soft: #f7f9fc; diff --git a/landing/static/fonts/fraunces-latin.woff2 b/landing/static/fonts/fraunces-latin.woff2 new file mode 100644 index 0000000..cb295bf Binary files /dev/null and b/landing/static/fonts/fraunces-latin.woff2 differ diff --git a/landing/static/fonts/inter-latin.woff2 b/landing/static/fonts/inter-latin.woff2 new file mode 100644 index 0000000..d15208d Binary files /dev/null and b/landing/static/fonts/inter-latin.woff2 differ diff --git a/landing/static/fonts/jetbrains-mono-latin.woff2 b/landing/static/fonts/jetbrains-mono-latin.woff2 new file mode 100644 index 0000000..4d09cda Binary files /dev/null and b/landing/static/fonts/jetbrains-mono-latin.woff2 differ -- cgit v1.2.3