Add Mesh+, project previews and a lighter chart #53

Merged
backmeupplz merged 1 commit from site-refresh into main 2026-10-08 21:04:16 +00:00
backmeupplz commented 2026-10-08 20:17:12 +00:00 (Migrated from github.com)

What

  • Mesh+ added after ABS+ (meshplus.app, open source link).
  • Project previews: OG cards for Veydrift, Plain Wallet, Agentboard, ABS+, Mesh+, MyGround and a Todorant screenshot; Telegram bot avatars for the bots. All lazy-loaded webp, ~130 KB total.
  • Plain Wallet now links to plainwallet.app with the current platform list; MyGround links to myground.online. Both keep their GitHub "open source" links.
  • Charts: frappe-charts is replaced with a ~150-line SVG chart. Labels are HTML, so titles no longer clip on mobile and supersede #50. X axes show dates instead of "days ago", and there's a crosshair tooltip. Voicy's hourly chart is labelled in hours.
  • Weight: JS 126 KB → 49 KB (37 KB → 18.6 KB gzip). Removed react-scripts, patch-package, unfetch, rollup-plugin-visualizer and @vitejs/plugin-react; yarn.lock is ~12k lines shorter.
  • Meta: og/twitter tags plus a 1200×630 card (public/og.jpg), preconnects for fonts/stats, h1/h2/h3 headings, blog post descriptions.
  • docs/ is no longer committed. The Pages workflow already builds it.

Bugs fixed

  • project.charts() called useSnapshot hooks only when stats were open, so the hook order changed between renders. Descriptions and charts are now plain functions of the snapshot.
  • "Hide all stats" stayed visible after every project was closed (opened kept false keys).
  • Description markdown links at index 0 were dropped (!link.index).
  • The persisted store key was constructor.name, which the minifier renames, so state could reset on deploy. localStorage errors are now caught.
  • Cloudflare chart labels were shifted by one day in negative-UTC timezones.
  • Projects with stats that fail to load now show a short message instead of nothing.

Checks

yarn install --immutable, yarn lint, yarn test:stats-fallbacks (now also runs the project-list script and covers the chart math), and yarn build all pass. Checked in a local preview on desktop and at 390px wide, with no horizontal scroll.

🤖 Generated with Claude Code

## What - **Mesh+** added after ABS+ (meshplus.app, open source link). - **Project previews**: OG cards for Veydrift, Plain Wallet, Agentboard, ABS+, Mesh+, MyGround and a Todorant screenshot; Telegram bot avatars for the bots. All lazy-loaded webp, ~130 KB total. - Plain Wallet now links to plainwallet.app with the current platform list; MyGround links to myground.online. Both keep their GitHub "open source" links. - **Charts**: frappe-charts is replaced with a ~150-line SVG chart. Labels are HTML, so titles no longer clip on mobile and supersede #50. X axes show dates instead of "days ago", and there's a crosshair tooltip. Voicy's hourly chart is labelled in hours. - **Weight**: JS 126 KB → 49 KB (37 KB → 18.6 KB gzip). Removed react-scripts, patch-package, unfetch, rollup-plugin-visualizer and @vitejs/plugin-react; yarn.lock is ~12k lines shorter. - **Meta**: og/twitter tags plus a 1200×630 card (`public/og.jpg`), preconnects for fonts/stats, h1/h2/h3 headings, blog post descriptions. - `docs/` is no longer committed. The Pages workflow already builds it. ## Bugs fixed - `project.charts()` called `useSnapshot` hooks only when stats were open, so the hook order changed between renders. Descriptions and charts are now plain functions of the snapshot. - "Hide all stats" stayed visible after every project was closed (`opened` kept `false` keys). - Description markdown links at index 0 were dropped (`!link.index`). - The persisted store key was `constructor.name`, which the minifier renames, so state could reset on deploy. localStorage errors are now caught. - Cloudflare chart labels were shifted by one day in negative-UTC timezones. - Projects with stats that fail to load now show a short message instead of nothing. ## Checks `yarn install --immutable`, `yarn lint`, `yarn test:stats-fallbacks` (now also runs the project-list script and covers the chart math), and `yarn build` all pass. Checked in a local preview on desktop and at 390px wide, with no horizontal scroll. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No description provided.