Commit Graph
24 Commits
Author SHA1 Message Date
swaits f64365bc35 feat(boards): add Heltec Mesh Node T114
First color-display board on the site (nRF52840 + SX1262 + 1.14" 240x135
ST7789 TFT). Slotted into the Heltec block in boards.ts; Uf2DownloadFlow
maps the T114 id to the bootloader drive name (T114BOOT — verify on
real hardware).

Drive-by: the /flash page subtitle said "download UF2 files for nRF
boards" but the Waveshare RP2040-LoRa is also a UF2 target. Updated to
"nRF52840 and RP2040 boards".
2026-04-30 03:16:25 -06:00
swaits 55f565c619 feat(boards): unify homepage grid with flasher + clickable cards
Three changes, all from finally having working RAK4631 firmware and
noticing the homepage grid was hand-coded, stale, and disconnected from
the flasher.

1. RAK4631 display name. Silkscreen + RAK marketing call this module
   'RAK4631'; 'WisBlock' is the ecosystem brand. The site was showing
   'RAK WisBlock 4631', which matched neither the product name nor the
   firmware commit message ('RAK4631 WisBlock bring-up'). It also
   contradicted Uf2DownloadFlow.svelte, which already correctly told
   users 'A USB drive named RAK4631 should appear'. Renamed to 'RAK4631
   WisBlock' in boards.ts. Stable identifiers (board id, asset filename
   pattern, driveName lookup) unchanged so v1.4.0 artifacts still
   resolve.

2. Homepage grid is now data-driven from boards.ts. Previously a
   hand-coded list that had silently drifted: missing the LilyGo T-Beam
   classic, LilyGo T-Beam S3 Supreme, and the Heltec V3 UART variant.
   Now maps over the same `boards` array the flasher uses, sorted
   case-insensitively by display name. Adding a board in one place
   updates both pages. `badgeText()` and `badgeColor()` lifted out of
   BoardSelector.svelte into boards.ts so the label and accent color
   have a single source of truth too.

3. Homepage cards are now links — clicking a card takes you to
   /flash?board=<id> with that board pre-selected. Flasher.svelte reads
   the param on mount and sets selectedBoard if the id resolves, so the
   user lands on the version-picker step directly.

The flasher's BoardSelector keeps its richer UI (search filter,
MCU-family grouping) — only the simpler homepage grid was unified.
2026-04-25 20:41:35 -06:00
swaits 7067038ab5 style: normalize board card box sizing 2026-04-23 13:26:52 -06:00
swaits 921d73bf08 feat: add search filter to board selector 2026-04-23 13:09:24 -06:00
swaits 6486ce1f91 feat: add LilyGo T-Beam and T-Beam Supreme board support 2026-04-23 13:07:17 -06:00
swaits 389b6354f7 fix: flash Elecrow M2 and Heltec V3 UART via web serial, bump astro to 6.1.9 2026-04-22 22:39:50 -06:00
swaits cfa6cf2be2 feat: style release changelog with color-coded sections
Gives the GitHub-release-body markdown real typography on the
/flash page:

- `## [version]` becomes a bordered mono version heading
- `### Added / Changed / Fixed / Removed / Deprecated / Security`
  render as uppercase section headers, color-coded per
  Keep-a-Changelog semantics (green / yellow / blue / red)
- Nested bullet lists switch marker style (disc → circle → square)
- Inline `code`, fenced `pre`, hr, strong, em, blockquote all styled
- Proper vertical rhythm (line-height 1.65, section spacing)

To colorize the section headers, `VersionSelector`.renderBody now
post-processes marked's output to tag known h3 texts with a
`data-section` attribute that CSS targets.

Rules live in `src/styles/global.css` under `@layer base`, not in
the Svelte component's `<style>` block: the Astro + Svelte 5 build
pipeline was silently dropping the component's scoped CSS in the
production bundle (works in dev via HMR, but `dist/_astro/*.css`
shipped with zero `.changelog` rules), leaving the netlify site
completely unstyled. Moving to global CSS sidesteps that toolchain
issue; the `.changelog` parent selector is specific enough that no
scope leakage is possible.
2026-04-11 23:17:59 -06:00
swaits 81130108b7 feat: add ELECROW ThinkNode-M2 board support
ESP32-S3 Meshtastic handset with SH1106 OLED. Flashes via the
CP2102 bridge, so this board is download-only like heltec_v3_uart —
Web Serial is unreliable through the bridge. The existing
`download-only` branch of EspFlashFlow surfaces the CP2102 warning
plus a .bin download and espflash CLI instructions, so no new
component code is needed.

ESP32-S3 grid in BoardSelector goes from sm:grid-cols-3 to
sm:grid-cols-2 lg:grid-cols-4 to accommodate the fourth ESP board.
Homepage Supported Boards grid drops from lg:grid-cols-5 to
lg:grid-cols-3 (3x2 layout) — six 200-px cards in one row was tight.
2026-04-11 22:51:45 -06:00
swaitsandClaude Opus 4.6 9889f05df6 style: sort board families alphabetically (ESP, nRF, RP)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 16:50:02 -06:00
swaitsandClaude Opus 4.6 033c4595cd feat: add Waveshare RP2040-LoRa board support
New RP2040 board family in board selector, homepage grid, and UF2
download flow (RPI-RP2 drive name, correct probe-rs chip).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 16:41:11 -06:00
swaits 6a35d3b844 fix: mobile overflow — constrain pre blocks within viewport, allow internal scroll 2026-04-08 17:31:25 -06:00
swaits b68dd4d0e3 fix: prevent pre blocks from overflowing viewport on mobile 2026-04-08 17:24:15 -06:00
swaits 5f0f14d12b feat: syntax highlighting with theme-matched colors, highlight toggle, layout tweaks
Custom Shiki theme matching site palette (green keywords, yellow strings,
blue functions, purple constants). Toggle button to switch between
highlighted and plain green. Reorganized page: What is it → Quick Start →
What can you do. Tightened copy. Narrower architecture diagram.
2026-04-08 17:15:15 -06:00
swaits d13ab1a492 refactor: reorganize landing page — What is it, Quick Start, What can you do 2026-04-08 14:40:28 -06:00
swaits 87acd82edb fix: escape Python f-string braces in Astro template 2026-04-08 14:16:53 -06:00
swaits 1e2b34c367 fix: replace broken quick-start snippet with real API (packet listener with RSSI/SNR) 2026-04-08 14:14:12 -06:00
swaits 2cdce808f7 fix: integrate logo into existing footer, remove duplicate 2026-04-08 14:12:28 -06:00
swaits 18213aab9d fix: move logo to footer, smaller with border 2026-04-08 14:09:19 -06:00
swaitsandClaude Opus 4.6 3ff1f8d209 feat: add logo to hero section
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 13:56:34 -06:00
swaitsandClaude Opus 4.6 bf05f4f115 docs: fix Python package names on landing page
- `pip install donglora-python` → `pip install donglora`
- client-py description: `donglora` on PyPI
- mux-py description: `donglora-mux` on PyPI

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 13:45:14 -06:00
swaits aef361286b left-align quick start section 2026-04-08 11:05:59 -06:00
swaits e8f76c7573 remove hr between boards and quick start 2026-04-08 11:04:31 -06:00
swaits 797fb9a22d section dividers, repo category descriptions 2026-04-08 11:03:23 -06:00
swaits fd677e33a0 conv. commit 2026-04-08 10:59:57 -06:00