-
cf65243e07
zen: rebuild UB locomotion — real 3D steering + motionRoot/visualRig split (Codex)
main
thejayman77
2026-07-01 21:53:35 -04:00
-
45bd44834e
zen: fluid rework — slow banked U-turns synced to the clip + calmer cruise + clip preview
thejayman77
2026-07-01 21:33:29 -04:00
-
d13811319d
zen: Phase B — UB swims with a behavior engine (wander, cruise/rest/burst, U-turns)
thejayman77
2026-07-01 20:38:43 -04:00
-
9365f69b4a
zen: calmer UB — live speed control (default 0.7×) + a touch bigger (scale 1.2)
thejayman77
2026-07-01 19:37:20 -04:00
-
a47897e7b1
zen: UB base loop → Swim1_norm (gentle in-place swim, not the static Idle)
thejayman77
2026-07-01 19:21:55 -04:00
-
ce69b8cd18
zen: UB is now the Queen angelfish (real model) + fix admin lockout
thejayman77
2026-07-01 18:10:38 -04:00
-
e64c5ced3c
art: verify pointerId in dragMove + clear activePointer on every exit (Codex final)
thejayman77
2026-06-30 17:00:12 -04:00
-
c42f29537b
art: harden zoom pointer lifecycle (Codex sign-off)
thejayman77
2026-06-30 16:45:03 -04:00
-
494e9dfcdd
art: drag-to-pan the zoomed artwork (persistent position; zoom holds the spot)
thejayman77
2026-06-30 16:20:12 -04:00
-
6b2458f674
art: variable gallery-inspector zoom (1×–4× toolbar) instead of a binary jump (Codex)
thejayman77
2026-06-30 16:13:00 -04:00
-
f3005e626d
art: desktop zoom in the lightbox (pan-by-cursor), mobile keeps pinch
thejayman77
2026-06-30 14:52:10 -04:00
-
d79c52dab4
docs: hero referrer fix done — referrerpolicy now consistent across all remote images
thejayman77
2026-06-30 14:38:53 -04:00
-
4d2f5e3703
home: hero image as <img referrerpolicy=no-referrer> (privacy consistency, Codex)
thejayman77
2026-06-30 14:38:05 -04:00
-
35aa8ff544
docs: record cache-revoke purge + engagement warm-up + optional hero-referrer item
thejayman77
2026-06-30 14:30:43 -04:00
-
2dc4419024
images/analytics: purge on policy revoke + engagement warm-up note (Codex close-out)
thejayman77
2026-06-30 14:29:55 -04:00
-
9d46e03ab8
docs: durable policy of record for images + visitor metrics (Codex close-out)
thejayman77
2026-06-30 14:09:24 -04:00
-
f416e13700
analytics: honest engagement metric — Engaged readers vs Recorded visits (Codex)
thejayman77
2026-06-30 14:07:24 -04:00
-
8a7606e20d
images: fix two fetcher bugs + add source-level image-rights policy (Codex)
thejayman77
2026-06-30 14:01:11 -04:00
-
a55ba185a8
images: harden the cache per Codex audit (SSRF-safe, cache-only endpoint, WebP-only)
thejayman77
2026-06-30 12:19:57 -04:00
-
c350a2713b
git: stop tracking the runtime image cache (data/img_cache)
thejayman77
2026-06-30 12:14:32 -04:00
-
ee43bb0df6
analytics: filter known-bot User-Agents at /api/events (honest visitor counts)
thejayman77
2026-06-30 11:19:51 -04:00
-
27022108b4
caddy: block vuln-scanner probe paths (no-PHP/WP stack) → 403, not the SPA shell
thejayman77
2026-06-30 10:11:57 -04:00
-
86d9897113
ui: reserve the scrollbar gutter so the top bar stops shifting between pages
thejayman77
2026-06-30 04:52:59 -04:00
-
3740e09d02
share pages: carry the real HubBar toolbar (consistency with the SPA)
thejayman77
2026-06-30 04:26:01 -04:00
-
c33dad9832
images: add Pillow to the web extra so the API container downscales too
thejayman77
2026-06-29 20:30:05 -04:00
-
8a3c00db3b
images: cache + serve article images from our own origin (bounded, LRU-evicted)
thejayman77
2026-06-29 20:28:33 -04:00
-
cb06d550bd
home: reveal the news photo only once it actually loads (retry + graceful fallback)
thejayman77
2026-06-29 19:58:26 -04:00
-
d98cec9ded
admin: read/unread triage for load errors (unread by default, mark read/all)
thejayman77
2026-06-29 10:38:22 -04:00
-
bddb8d22b0
HubBar: revalidate auth on mount so the avatar shows on cold hub entry
thejayman77
2026-06-29 05:56:26 -04:00
-
b8ac82e897
HubBar: show the signed-in profile picture in the account button
thejayman77
2026-06-29 05:54:11 -04:00
-
0ae789752e
fix: QOTD/WOTD freshness — pick within the freshest cohort, not the rotated pool
thejayman77
2026-06-29 05:39:06 -04:00
-
414a4c4b8b
deploy: drop the cache-warmer from sync-static.sh (no-op without CF proxy)
thejayman77
2026-06-29 05:28:49 -04:00
-
03aed9c37d
fix: mobile-game footer selector + hub teaser honors Boundaries (Codex)
thejayman77
2026-06-28 20:05:36 -04:00
-
667b1a82c3
brand: standardize "Upbeat Bytes" → "upbeatBytes" everywhere
thejayman77
2026-06-28 20:01:20 -04:00
-
f8628b3b14
homepage: title → the hub tagline (was news-only)
thejayman77
2026-06-28 19:55:13 -04:00
-
1bd86e30e5
caddy: fix /home2,/home3 redirect (redir destination, not a path matcher)
thejayman77
2026-06-28 19:21:44 -04:00
-
2cfffdfd6a
NEWS RELAUNCH CUTOVER: promote the hub to /, feed to /news, go public
thejayman77
2026-06-28 19:16:43 -04:00
-
1c1ecefde8
news: harden paywall exclusion at the candidate query + add the missing regressions
thejayman77
2026-06-28 18:54:53 -04:00
-
c600145ba5
news: close the remaining no-paywall bypass paths (Codex audit)
thejayman77
2026-06-28 17:22:52 -04:00
-
0d21231597
news: hard-exclude paywalled sources from the feed + brief (no unreadable news)
thejayman77
2026-06-28 17:10:00 -04:00
-
54761f5083
news behavior split: /news leads with Latest, Highlights via ?view=highlights
thejayman77
2026-06-28 16:21:42 -04:00
-
39b38f0cf1
/news utilities: label the pills + wrap the action row on phones (Codex)
thejayman77
2026-06-28 16:01:05 -04:00
-
036e7ed7e8
/news: surface Saved + Boundaries in the view-head (don't bury them in Account)
thejayman77
2026-06-28 15:42:40 -04:00
-
e974fc4942
/news: wear the shared HubBar (consistent chrome), keep BottomNav + global footer
thejayman77
2026-06-28 15:32:08 -04:00
-
2fd28fa719
news: track @newsHidden in Caddy snapshot + extract testable feed routing helpers
thejayman77
2026-06-28 15:19:36 -04:00
-
f4a7a7bcc7
news relaunch step 1: extract the feed into NewsFeed.svelte, mount at / and /news
thejayman77
2026-06-28 14:11:06 -04:00
-
099bf55711
docs: news relaunch migration plan (link/redirect map + interim routing)
thejayman77
2026-06-28 14:00:08 -04:00
-
6c10ad99a9
On This Day: serve sharp images (originalimage, not the 330px thumbnail)
thejayman77
2026-06-27 17:07:37 -04:00
-
e3e6f24753
home3 news: typographic category cover for pictureless articles
thejayman77
2026-06-26 22:05:41 -04:00
-
022908392b
/onthisday: IN HISTORY +1px (final landing)
thejayman77
2026-06-26 21:38:13 -04:00
-
998e758614
/onthisday: drop "IN HISTORY" 2px to land it (final)
thejayman77
2026-06-26 21:36:16 -04:00
-
14c2648f8f
/onthisday: tie "IN HISTORY" offset to the year size (stop the oscillation)
thejayman77
2026-06-26 21:30:17 -04:00
-
fe0c2988c2
/onthisday: lower "IN HISTORY" to the visible top of "2013" (cap-offset fix)
thejayman77
2026-06-26 21:25:22 -04:00
-
883c37b428
Joy cards finalize (Codex pass): robust year align, image guard, a11y, honesty
thejayman77
2026-06-26 21:10:11 -04:00
-
36b3df5d40
/onthisday: nudge year alignment + clay Read-more button
thejayman77
2026-06-26 20:36:25 -04:00
-
719a2c5052
/onthisday: baseline-align "2013" with the date so it sits on the line
thejayman77
2026-06-26 20:30:39 -04:00
-
2e43766d71
/onthisday: cap-align "IN HISTORY" to the top of "2013" + tighten the gap
thejayman77
2026-06-26 20:24:49 -04:00
-
aa8ee674d5
/onthisday: year back to green, "IN HISTORY" top-aligned beside big "2013"
thejayman77
2026-06-26 20:19:53 -04:00
-
d969810c10
/onthisday: figure-vs-photo hero, plain stacked year, clay title, more space
thejayman77
2026-06-26 19:16:14 -04:00
-
e2e59bfdc4
/onthisday: move the year off the image into a green "In history" chip
thejayman77
2026-06-26 18:51:03 -04:00
-
783b853aee
joy cards: restore eyelash title to mockup size + darken the micro-labels
thejayman77
2026-06-26 18:42:52 -04:00
-
cf018dc36d
/onthisday redesign: CD's green-key "letter" with hero + year overlay
thejayman77
2026-06-26 17:58:48 -04:00
-
ba0838dd94
home3: rename the small-joys OTD card "A good thing today" → "On this day"
thejayman77
2026-06-26 11:54:41 -04:00
-
50488a1885
/quote redesign: CD's "letter" QOTD (deckle frame, wax-seal date, watermark)
thejayman77
2026-06-26 11:46:28 -04:00
-
ecfc49eda0
Codex audit fixes: home3 read-time, /art OG/canonical, Bloom medallion centering
thejayman77
2026-06-25 20:54:57 -04:00
-
123602dc52
Revert "/play Bloom: enlarge the flower so it fills the tile (it was already centered)"
thejayman77
2026-06-25 20:47:09 -04:00
-
3dc72b1d31
/play Bloom: enlarge the flower so it fills the tile (it was already centered)
thejayman77
2026-06-25 20:45:31 -04:00
-
a74a363728
/play Bloom motif: center the flower vertically above the title (match other tiles)
thejayman77
2026-06-25 20:41:10 -04:00
-
60a1b50376
/play polish: center motifs, fill Daily Word 2nd row, tighten bubble aim
thejayman77
2026-06-25 20:29:34 -04:00
-
5a7c90e7be
/play: bubble shooter to the right aiming a blue center ball; space under top bar
thejayman77
2026-06-25 20:16:48 -04:00
-
f6ae44e126
/play motifs: shrink word-search + memory-match, smaller/raised bubbles w/ angled aim
thejayman77
2026-06-25 20:05:21 -04:00
-
aa15cf119c
/play arcade tweaks: Back in header (right), real word-search grid, packed bubbles
thejayman77
2026-06-25 19:50:24 -04:00
-
6348835099
/play: arcade-tile hub redesign (presentation only; routing untouched)
thejayman77
2026-06-25 13:32:19 -04:00
-
485c4a7805
WOTD: commit cached pronunciation clip for 'beauty' (matches tracked audio)
thejayman77
2026-06-25 13:23:02 -04:00
-
89987b8316
/art: thickness affects rotated fullscreen; collapsible writeup on mobile
thejayman77
2026-06-23 21:09:28 -04:00
-
420150a532
/art mobile: fix horizontal overflow (controls width:100% + margins)
thejayman77
2026-06-23 20:54:10 -04:00
-
9c41da5fcc
/art desktop: fix CTA overlap, widen card for a bigger piece, darken labels
thejayman77
2026-06-23 20:31:20 -04:00
-
5157c221ed
/art redesign: "The Story" editorial page (writeup + palette + frame + share)
thejayman77
2026-06-23 20:22:06 -04:00
-
ed814c97b9
Daily Art engine: museum-guide blurb (grounded LLM) + extracted palette
thejayman77
2026-06-23 20:12:54 -04:00
-
79ecb800af
home3 News card: desktop gist fills to equal height (basis:0 fade), right never stretches
thejayman77
2026-06-23 16:37:40 -04:00
-
44610703c2
home3 News card: hug content (no stretch gap) + tighten mobile brief gap
thejayman77
2026-06-23 16:29:40 -04:00
-
376f6263fd
home3 News card: clamp the gist (3 lines mobile / 4 desktop), pin Read-more bottom
thejayman77
2026-06-23 16:07:05 -04:00
-
8dc22afbdc
home3: fix full-width regression — don't let the containment rule override .bento max-width
thejayman77
2026-06-23 15:57:51 -04:00
-
5657494988
Fix joys regressions + self-host Work Sans for cards (Codex audit)
thejayman77
2026-06-23 13:57:55 -04:00
-
1c6c907f7f
home3 + play: CD-guided card polish, scrollable Small Joys, consistent Back
thejayman77
2026-06-23 13:41:04 -04:00
-
f0e02b40e5
One consistent top bar across the whole hub (HubBar everywhere)
thejayman77
2026-06-23 13:11:18 -04:00
-
8a79b14c80
/art: add a Back button (matches the hub's single-history behavior)
thejayman77
2026-06-23 09:38:54 -04:00
-
eaeb8d3139
WOTD Listen button: always blue, no sticky hover or tap-highlight box on mobile
thejayman77
2026-06-23 09:29:08 -04:00
-
1150ae916b
/art rotate: keep the whole frame on-screen (short-edge cap + modest fixed frame)
thejayman77
2026-06-23 09:22:17 -04:00
-
06dd293da0
/art: landscape paintings rotate to fill the screen in fullscreen on portrait phones
thejayman77
2026-06-23 09:15:56 -04:00
-
4720ded29c
Mobile combing: WOTD watermark, Entertainment card breathing, Art lightbox fit
thejayman77
2026-06-23 09:06:36 -04:00
-
cf66d99e21
home3 News card: "1 min brief · ~N min full story" badge
thejayman77
2026-06-23 08:44:40 -04:00
-
dc23277b38
Read-time: full-article "Full story · ~N min" badge (Option B)
thejayman77
2026-06-23 08:09:00 -04:00
-
bdf3b1f47b
WOTD _polish: enforce the "examples must use the word" contract
thejayman77
2026-06-23 07:56:22 -04:00
-
26b23a8f09
#6: computed News read-time + per-page OG/canonical for hub detail pages
thejayman77
2026-06-23 06:51:40 -04:00
-
ccdc764b2b
WOTD /word polish: larger IPA + part-of-speech label, watermark clears the date
thejayman77
2026-06-23 06:40:00 -04:00
-
c809594b43
WOTD: one-off polish backfill script (migrate + gloss/usage for existing pool)
thejayman77
2026-06-23 06:11:07 -04:00
-
cebbed58ab
WOTD #4/#5 content quality + Editorial Asymmetric /word page (CD)
thejayman77
2026-06-23 06:08:14 -04:00
-
e5f3d942e2
hub: back-button replaceState trapdoor + hamburger resize-safety
thejayman77
2026-06-23 05:56:46 -04:00
-
d3c7282850
hub detail pages: shared Back button with proper single-history
thejayman77
2026-06-22 22:08:39 -04:00