Slab Pad
Changelog.
Every release, newest first. Slab Pad updates itself — install once and these arrive on their own, signed and notarised.

v0.2.9Latest
Slab v0.2.9
API Migration to api.e-labs.co.uk
- Updates and licensing now go through the unified E-Labs API at
https://api.e-labs.co.ukinstead of Lemon Squeezy + slab.e-labs.co.uk - Updater path moved from
/api/slab/updates/latestto/v1/slab/updates/latest - Auth header changed from
X-API-KeytoX-ELabs-Client-Key - The previous
slab.e-labs.co.ukupdater stays alive so v0.2.8 users can still upgrade to this release; it'll be retired in v0.3.0
Licence System
- Replaced direct Lemon Squeezy calls with E-Labs API endpoints (
/v1/slab/licence/{activate,check,deactivate}) - New stable per-install device ID (UUID) replaces Lemon Squeezy's
instance_id - Old licence data is automatically cleared on first launch — re-activate with your existing key
- Licence modal now shows your tier alongside email and key
v0.2.8
Slab v0.2.8
Auto-Updater
- Fixed update endpoint returning HTTP 500 on every request — auto-updater was broken end-to-end since v0.2.7
- Update banner now correctly fetches and displays available versions
Editor
- Untitled tabs no longer locked into raw view — formatted/split modes now work on new blank tabs
- Line numbers toggle now works on Untitled tabs
Build & Branding
- Renamed app build env vars:
MARKPAD_UPDATE_API→SLAB_UPDATE_API,MARKPAD_UPDATE_KEY→SLAB_UPDATE_KEY - Silenced two Rust compiler warnings in P2P module
v0.2.7
Slab v0.2.7
Main Branch Sync Release
- Merged the full
v0.2.0release line intomainsomainnow includes the latest app updates, release pipeline fixes, and runner-feature integrations - Preserved recent website/main behavior while carrying over the successful updater pipeline improvements from
v0.2.x
Why this release
- Aligns branch strategy by making
mainthe up-to-date source of truth before continuing 0.2.x releases - Prepares a clean next patch release from fully synced history
Previous (v0.2.6)
Release Pipeline Completion Fix
- Fixed the updater merge/upload step to use explicit repository targeting when uploading
latest.json, avoiding git-context failures in non-checked-out jobs - Keeps the
v0.2.5endpoint normalization and action runtime updates, with final release publishing path now corrected end-to-end
Previous (v0.2.5)
CI Release Reliability Fix
- Updated GitHub Actions core steps to newer major versions to stay ahead of Node.js runtime deprecation warnings
- Hardened updater endpoint secret parsing to handle wrapped quotes, leading/trailing whitespace, trailing slashes, and case variations in the URL scheme
- Preserved strict release safety checks so local/private addresses are still blocked for production tags
Why this release
v0.2.4failed in CI because the endpoint validation rejected a secret value format that was effectively correct but differently wrapped- This release keeps security checks while improving normalization so valid production URLs pass consistently
Previous (v0.2.4)
New Features and Editor Enhancements
- Merged RAW pane line number support and related editor improvements
- Added rich markdown extension improvements for better in-editor behavior and formatting
- Included recently merged bug and feature runner updates from
v0.2.0
Website Download & Release Flow Improvements
- Improved website DMG lookup/download behavior for Mac architecture-specific releases
- Refined release detection and download handling paths used by the website client
Updater Endpoint Safety Fix
- Added release-time validation in CI to prevent accidental local/private updater URLs from being baked into production builds
- Publish workflow now fails fast if
MARKPAD_UPDATE_APIis empty, non-HTTPS, or points to localhost/private network ranges - Standardized endpoint handling to trim trailing slashes before generating
/api/slab/updates/latest
Previous (v0.2.3)
Branding Completion Release
- Finalized remaining Slab rebrand updates throughout the app so product naming, identifiers, and in-app messaging are fully consistent
- Updated app metadata and defaults to align with the Slab identity across startup content and runtime behavior
- Synced release version references to match this release and avoid mismatch with prior tags
Previous (v0.2.2)
Auto-Updater Fix
- Fixed
latest.jsonmissing aarch64 (Apple Silicon) platform entries — previously only x86_64 was included, causing "None of the fallback platforms were found" error on M-series Macs - CI now merges updater JSON from both architecture builds into a single
latest.jsonwith all platforms - Apple Silicon users can now receive and install updates correctly
Previous (v0.2.1)
Infrastructure & Branding
- Updated CI release pipeline to use "Slab" branding in release names and descriptions
- Migrated update proxy endpoint to new production URL (
slab.e-labs.co.uk) - Updated
.env.exampleto reflect new Slab branding and production endpoint
Previous (v0.2.0)
Slab Brand Themes
- Introduced 3 new Slab brand themes: Muted, Light, and Dark
- Slab Muted is now the default theme, featuring the warm parchment palette from the Slab brand pack v1.5
- Slab Light offers a clean white-led surface with deep forest green accents
- Slab Dark provides a low-light reading experience with earthy tones
- Typography updated to brand fonts: Syne (headings), DM Sans (body), DM Mono (code)
- New Slab syntax highlighting theme for code blocks, using greens and earth tones from the brand palette
- Slab themes appear in their own submenu under View > Theme > Slab
Existing Themes
- All 9 previous themes (Clean Light, Warm Light, Cool Light, High Contrast, Material Dark, True Dark, Midnight Blue, Dracula, Nord Dark) remain available and unchanged
v0.2.6
Slab v0.2.6
Release Pipeline Completion Fix
- Fixed the updater merge/upload step to use explicit repository targeting when uploading
latest.json, avoiding git-context failures in non-checked-out jobs - Keeps the
v0.2.5endpoint normalization and action runtime updates, with final release publishing path now corrected end-to-end
Previous (v0.2.5)
CI Release Reliability Fix
- Updated GitHub Actions core steps to newer major versions to stay ahead of Node.js runtime deprecation warnings
- Hardened updater endpoint secret parsing to handle wrapped quotes, leading/trailing whitespace, trailing slashes, and case variations in the URL scheme
- Preserved strict release safety checks so local/private addresses are still blocked for production tags
Why this release
v0.2.4failed in CI because the endpoint validation rejected a secret value format that was effectively correct but differently wrapped- This release keeps security checks while improving normalization so valid production URLs pass consistently
Previous (v0.2.4)
New Features and Editor Enhancements
- Merged RAW pane line number support and related editor improvements
- Added rich markdown extension improvements for better in-editor behavior and formatting
- Included recently merged bug and feature runner updates from
v0.2.0
Website Download & Release Flow Improvements
- Improved website DMG lookup/download behavior for Mac architecture-specific releases
- Refined release detection and download handling paths used by the website client
Updater Endpoint Safety Fix
- Added release-time validation in CI to prevent accidental local/private updater URLs from being baked into production builds
- Publish workflow now fails fast if
MARKPAD_UPDATE_APIis empty, non-HTTPS, or points to localhost/private network ranges - Standardized endpoint handling to trim trailing slashes before generating
/api/slab/updates/latest
Previous (v0.2.3)
Branding Completion Release
- Finalized remaining Slab rebrand updates throughout the app so product naming, identifiers, and in-app messaging are fully consistent
- Updated app metadata and defaults to align with the Slab identity across startup content and runtime behavior
- Synced release version references to match this release and avoid mismatch with prior tags
Previous (v0.2.2)
Auto-Updater Fix
- Fixed
latest.jsonmissing aarch64 (Apple Silicon) platform entries — previously only x86_64 was included, causing "None of the fallback platforms were found" error on M-series Macs - CI now merges updater JSON from both architecture builds into a single
latest.jsonwith all platforms - Apple Silicon users can now receive and install updates correctly
Previous (v0.2.1)
Infrastructure & Branding
- Updated CI release pipeline to use "Slab" branding in release names and descriptions
- Migrated update proxy endpoint to new production URL (
slab.e-labs.co.uk) - Updated
.env.exampleto reflect new Slab branding and production endpoint
Previous (v0.2.0)
Slab Brand Themes
- Introduced 3 new Slab brand themes: Muted, Light, and Dark
- Slab Muted is now the default theme, featuring the warm parchment palette from the Slab brand pack v1.5
- Slab Light offers a clean white-led surface with deep forest green accents
- Slab Dark provides a low-light reading experience with earthy tones
- Typography updated to brand fonts: Syne (headings), DM Sans (body), DM Mono (code)
- New Slab syntax highlighting theme for code blocks, using greens and earth tones from the brand palette
- Slab themes appear in their own submenu under View > Theme > Slab
Existing Themes
- All 9 previous themes (Clean Light, Warm Light, Cool Light, High Contrast, Material Dark, True Dark, Midnight Blue, Dracula, Nord Dark) remain available and unchanged
v0.2.5
Slab v0.2.5
CI Release Reliability Fix
- Updated GitHub Actions core steps to newer major versions to stay ahead of Node.js runtime deprecation warnings
- Hardened updater endpoint secret parsing to handle wrapped quotes, leading/trailing whitespace, trailing slashes, and case variations in the URL scheme
- Preserved strict release safety checks so local/private addresses are still blocked for production tags
Why this release
v0.2.4failed in CI because the endpoint validation rejected a secret value format that was effectively correct but differently wrapped- This release keeps security checks while improving normalization so valid production URLs pass consistently
Previous (v0.2.4)
New Features and Editor Enhancements
- Merged RAW pane line number support and related editor improvements
- Added rich markdown extension improvements for better in-editor behavior and formatting
- Included recently merged bug and feature runner updates from
v0.2.0
Website Download & Release Flow Improvements
- Improved website DMG lookup/download behavior for Mac architecture-specific releases
- Refined release detection and download handling paths used by the website client
Updater Endpoint Safety Fix
- Added release-time validation in CI to prevent accidental local/private updater URLs from being baked into production builds
- Publish workflow now fails fast if
MARKPAD_UPDATE_APIis empty, non-HTTPS, or points to localhost/private network ranges - Standardized endpoint handling to trim trailing slashes before generating
/api/slab/updates/latest
Previous (v0.2.3)
Branding Completion Release
- Finalized remaining Slab rebrand updates throughout the app so product naming, identifiers, and in-app messaging are fully consistent
- Updated app metadata and defaults to align with the Slab identity across startup content and runtime behavior
- Synced release version references to match this release and avoid mismatch with prior tags
Previous (v0.2.2)
Auto-Updater Fix
- Fixed
latest.jsonmissing aarch64 (Apple Silicon) platform entries — previously only x86_64 was included, causing "None of the fallback platforms were found" error on M-series Macs - CI now merges updater JSON from both architecture builds into a single
latest.jsonwith all platforms - Apple Silicon users can now receive and install updates correctly
Previous (v0.2.1)
Infrastructure & Branding
- Updated CI release pipeline to use "Slab" branding in release names and descriptions
- Migrated update proxy endpoint to new production URL (
slab.e-labs.co.uk) - Updated
.env.exampleto reflect new Slab branding and production endpoint
Previous (v0.2.0)
Slab Brand Themes
- Introduced 3 new Slab brand themes: Muted, Light, and Dark
- Slab Muted is now the default theme, featuring the warm parchment palette from the Slab brand pack v1.5
- Slab Light offers a clean white-led surface with deep forest green accents
- Slab Dark provides a low-light reading experience with earthy tones
- Typography updated to brand fonts: Syne (headings), DM Sans (body), DM Mono (code)
- New Slab syntax highlighting theme for code blocks, using greens and earth tones from the brand palette
- Slab themes appear in their own submenu under View > Theme > Slab
Existing Themes
- All 9 previous themes (Clean Light, Warm Light, Cool Light, High Contrast, Material Dark, True Dark, Midnight Blue, Dracula, Nord Dark) remain available and unchanged
v0.2.1
Slab v0.2.1
Infrastructure & Branding
- Updated CI release pipeline to use "Slab" branding in release names and descriptions
- Migrated update proxy endpoint to new production URL (
slab.e-labs.co.uk) - Updated
.env.exampleto reflect new Slab branding and production endpoint
Previous (v0.2.0)
Slab Brand Themes
- Introduced 3 new Slab brand themes: Muted, Light, and Dark
- Slab Muted is now the default theme, featuring the warm parchment palette from the Slab brand pack v1.5
- Slab Light offers a clean white-led surface with deep forest green accents
- Slab Dark provides a low-light reading experience with earthy tones
- Typography updated to brand fonts: Syne (headings), DM Sans (body), DM Mono (code)
- New Slab syntax highlighting theme for code blocks, using greens and earth tones from the brand palette
- Slab themes appear in their own submenu under View > Theme > Slab
Existing Themes
- All 9 previous themes (Clean Light, Warm Light, Cool Light, High Contrast, Material Dark, True Dark, Midnight Blue, Dracula, Nord Dark) remain available and unchanged
Previous (v0.1.5)
Update Test
- Changed welcome screen branding to "Slab" to verify auto-updater works end-to-end
Previous (v0.1.4)
Auto-Updater
- Added automatic update detection on startup with a non-intrusive banner notification
- Manual "Check for Updates" still available via the menu
- Update checks now have a 15-second timeout to prevent hanging
- Integrated website-based update proxy for secure private repo distribution
- API key authentication for update endpoints
Slash Commands
- Fixed slash command popup dismissing instantly when typing
- Slash commands now activate on space after the command (e.g.,
/h2) - Block type indicators with dropdown selection
Editor
- Editable tables with inline editing support
- Dark mode fixes and UI polish
- Split view improvements (raw editor + rich preview)
Testing
- Added Vitest test suite with 25 tests covering slash command registry, extensions, and hook behaviour
Infrastructure
- Apple code signing and notarization for macOS builds
- CI pipeline improvements for tag-triggered releases
v0.2.0
MarkPad v0.2.0
Slab Brand Themes
- Introduced 3 new Slab brand themes: Muted, Light, and Dark
- Slab Muted is now the default theme, featuring the warm parchment palette from the Slab brand pack v1.5
- Slab Light offers a clean white-led surface with deep forest green accents
- Slab Dark provides a low-light reading experience with earthy tones
- Typography updated to brand fonts: Syne (headings), DM Sans (body), DM Mono (code)
- New Slab syntax highlighting theme for code blocks, using greens and earth tones from the brand palette
- Slab themes appear in their own submenu under View > Theme > Slab
Existing Themes
- All 9 previous themes (Clean Light, Warm Light, Cool Light, High Contrast, Material Dark, True Dark, Midnight Blue, Dracula, Nord Dark) remain available and unchanged
Previous (v0.1.5)
Update Test
- Changed welcome screen branding to "Slab" to verify auto-updater works end-to-end
Previous (v0.1.4)
Auto-Updater
- Added automatic update detection on startup with a non-intrusive banner notification
- Manual "Check for Updates" still available via the menu
- Update checks now have a 15-second timeout to prevent hanging
- Integrated website-based update proxy for secure private repo distribution
- API key authentication for update endpoints
Slash Commands
- Fixed slash command popup dismissing instantly when typing
- Slash commands now activate on space after the command (e.g.,
/h2) - Block type indicators with dropdown selection
Editor
- Editable tables with inline editing support
- Dark mode fixes and UI polish
- Split view improvements (raw editor + rich preview)
Testing
- Added Vitest test suite with 25 tests covering slash command registry, extensions, and hook behaviour
Infrastructure
- Apple code signing and notarization for macOS builds
- CI pipeline improvements for tag-triggered releases
v0.1.5
MarkPad v0.1.5
Update Test
- Changed welcome screen branding to "Slab" to verify auto-updater works end-to-end
Previous (v0.1.4)
Auto-Updater
- Added automatic update detection on startup with a non-intrusive banner notification
- Manual "Check for Updates" still available via the menu
- Update checks now have a 15-second timeout to prevent hanging
- Integrated website-based update proxy for secure private repo distribution
- API key authentication for update endpoints
Slash Commands
- Fixed slash command popup dismissing instantly when typing
- Slash commands now activate on space after the command (e.g.,
/h2) - Block type indicators with dropdown selection
Editor
- Editable tables with inline editing support
- Dark mode fixes and UI polish
- Split view improvements (raw editor + rich preview)
Testing
- Added Vitest test suite with 25 tests covering slash command registry, extensions, and hook behaviour
Infrastructure
- Apple code signing and notarization for macOS builds
- CI pipeline improvements for tag-triggered releases
v0.1.4
MarkPad v0.1.4
Update Test
- Changed welcome screen branding to "Slab" to verify auto-updater works end-to-end
Previous (v0.1.3)
Auto-Updater
- Added automatic update detection on startup with a non-intrusive banner notification
- Manual "Check for Updates" still available via the menu
- Update checks now have a 15-second timeout to prevent hanging
- Integrated website-based update proxy for secure private repo distribution
- API key authentication for update endpoints
Slash Commands
- Fixed slash command popup dismissing instantly when typing
- Slash commands now activate on space after the command (e.g.,
/h2) - Block type indicators with dropdown selection
Editor
- Editable tables with inline editing support
- Dark mode fixes and UI polish
- Split view improvements (raw editor + rich preview)
Testing
- Added Vitest test suite with 25 tests covering slash command registry, extensions, and hook behaviour
Infrastructure
- Apple code signing and notarization for macOS builds
- CI pipeline improvements for tag-triggered releases
v0.1.3
MarkPad v0.1.3
Auto-Updater
- Added automatic update detection on startup with a non-intrusive banner notification
- Manual "Check for Updates" still available via the menu
- Update checks now have a 15-second timeout to prevent hanging
- Integrated website-based update proxy for secure private repo distribution
- API key authentication for update endpoints
Slash Commands
- Fixed slash command popup dismissing instantly when typing
- Slash commands now activate on space after the command (e.g.,
/h2) - Block type indicators with dropdown selection
Editor
- Editable tables with inline editing support
- Dark mode fixes and UI polish
- Split view improvements (raw editor + rich preview)
Testing
- Added Vitest test suite with 25 tests covering slash command registry, extensions, and hook behaviour
Infrastructure
- Apple code signing and notarization for macOS builds
- CI pipeline improvements for tag-triggered releases
v0.1.2
MarkPad v0.1.2
See the assets below to download and install MarkPad.
v0.1.1
MarkPad v0.1.1
See the assets below to download and install MarkPad.
v0.1.0
v0.1.0
First public usable release. Basic Markdown Pad