From 0ded1fdf13e46c54b98517c1bfb4a071e0c3d520 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 16 Aug 2026 11:25:30 +0000 Subject: [PATCH 01/13] Migrate public screens to Tailwind, add tasteful motion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Move the paste, file-download and homepage masthead off scoped/component CSS onto Tailwind utilities. The Markdown-generated prose classes stay in app.css — they style server-rendered HTML with no Svelte markup to carry utilities. Refinements on the public (slightly playful) surfaces: - file page: download arrow nudges down on hover (the direction a download travels); hero card rises in on load - paste page: Copy button morphs to a check on success at a fixed width so it never resizes mid-press; body rises in - one shared `rise` entrance token, collapsing to instant under reduced motion Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01VLQ8mwty2M9epwbLzs2k3Y --- package-lock.json | 26 +++++ src/app.css | 79 +++----------- src/routes/+page.svelte | 16 +-- src/routes/d/[slug]/+page.svelte | 175 +++++++------------------------ src/routes/p/[slug]/+page.svelte | 151 +++++++------------------- 5 files changed, 129 insertions(+), 318 deletions(-) diff --git a/package-lock.json b/package-lock.json index 62d5cb6..7eb0792 100644 --- a/package-lock.json +++ b/package-lock.json @@ -269,6 +269,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -285,6 +286,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -301,6 +303,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -317,6 +320,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -333,6 +337,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -349,6 +354,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -365,6 +371,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -381,6 +388,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -397,6 +405,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -413,6 +422,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -429,6 +439,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -445,6 +456,7 @@ "cpu": [ "loong64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -461,6 +473,7 @@ "cpu": [ "mips64el" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -477,6 +490,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -493,6 +507,7 @@ "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -509,6 +524,7 @@ "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -525,6 +541,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -541,6 +558,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -557,6 +575,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -573,6 +592,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -589,6 +609,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -605,6 +626,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -621,6 +643,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -637,6 +660,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -653,6 +677,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -669,6 +694,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ diff --git a/src/app.css b/src/app.css index 1bc83dc..28ac248 100644 --- a/src/app.css +++ b/src/app.css @@ -250,11 +250,28 @@ --ease-out: cubic-bezier(0.23, 1, 0.32, 1); --ease-press: cubic-bezier(0.2, 0, 0, 1); + /* The one shared entrance: opacity plus a short rise, for a hero object on a + rarely-seen screen (the paste/file pages, an opened admin detail pane). + `both` holds the from-state before it plays so there is no flash of the + settled position. Reduced motion collapses it to instant (see base). */ + --animate-rise: rise 420ms var(--ease-out) both; + --shadow-widget: var(--sh-widget); --shadow-widget-lift: var(--sh-widget-lift); --shadow-pop: var(--sh-pop); } +@keyframes rise { + from { + opacity: 0; + transform: translateY(8px) scale(0.99); + } + to { + opacity: 1; + transform: none; + } +} + /* --------------------------------------------------------------------------- Base --------------------------------------------------------------------------- */ @@ -387,58 +404,6 @@ } } - /* --------------------------------------------------------------------- - The document - `/` is one centred reading column: a small masthead, the Markdown body, - a quiet footer. Its layout lives here, not in a scoped route ` diff --git a/src/routes/p/[slug]/+page.svelte b/src/routes/p/[slug]/+page.svelte index 8c87847..872fa61 100644 --- a/src/routes/p/[slug]/+page.svelte +++ b/src/routes/p/[slug]/+page.svelte @@ -1,4 +1,6 @@ -
- +
+ + Skip to content + -
- - diff --git a/src/routes/admin/+page.svelte b/src/routes/admin/+page.svelte index 20f2bb6..96157e8 100644 --- a/src/routes/admin/+page.svelte +++ b/src/routes/admin/+page.svelte @@ -68,8 +68,16 @@ Links -
-
+ +
+

Links

- From cb3e69ec492d53f6f692f9ab6cddea7bc922e816 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 16 Aug 2026 11:44:33 +0000 Subject: [PATCH 04/13] Finish dashboard migration; extract shared master-detail shell MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every remaining scoped diff --git a/src/routes/admin/api/+page.svelte b/src/routes/admin/api/+page.svelte index 6b87a33..6486046 100644 --- a/src/routes/admin/api/+page.svelte +++ b/src/routes/admin/api/+page.svelte @@ -1,6 +1,11 @@