Scratch

Scratch

Changelog

Every release of Scratch, in one place.

0.1.0 — initial release

The first release of Scratch. macOS, Apple silicon.

First-run onboarding

  • Three-step setup on first launch: appearance, summon shortcut, dock visibility. Skip at any step and the walkthrough buffers still seed.
  • Five pre-loaded walkthrough buffers appear after setup: welcome, keyboard shortcuts, Markdown and slash commands, capture text (with a plain-language buffer about the screen-recording permission), and a pointer to settings. They behave like any other buffer.

The buffer

  • Single global hotkey (⌥Space by default) summons and dismisses the window from anywhere on macOS.
  • Always-on Markdown editor (CodeMirror 6) with live preview, slash commands, and GFM.
  • Cross-buffer search (⌘⇧F) over every buffer, plus in-buffer find (⌘F).
  • Local-only by design: buffers live as plain Markdown files in your application data folder. No account, no sync service, no server-side copy.
  • Choose where buffers are stored (Settings → General → Buffer location) — point it at iCloud Drive or Dropbox to sync across machines, with an optional copy of your existing buffers. Changes made by a sync client or another machine reflect live; only genuinely different content on disk counts as a change, so a byte-for-byte sync echo never raises a false alarm. If the open buffer changes on disk while you have unsaved edits, a banner lets you keep yours or take the other version.

Editor

  • Configurable font size, line height, tab size, line numbers, spell check, and cursor style.
  • Five built-in themes (Bone, Slate, Tungsten, Edge, Midnight) plus custom themes saved from any appearance state.
  • Density preset (compact, cozy, comfortable) and accent color (four presets or any hex).
  • Callouts render live: > [!note] shows a colored left bar and a type label when the cursor is outside the block. Types are note, tip, important, warning, and danger, with aliases; insert one with /callout.
  • Blockquotes show a continuous left bar down the full height of the quote, one bar per nesting level. Multi-line quotes no longer leave a stray > on continuation lines.

Inline calculations

  • Lines that look like math get a live result at the end of the line — arithmetic, percentages, named variables scoped to a block, and x-as-multiplication between numbers.
  • Variables are italicized inline and autocomplete suggests them as you type. The constants pi and e resolve in expressions too.
  • Unit conversion covers everything mathjs knows about (length, mass, time, area, volume, temperature, data). Use to or in between an expression and the target unit.
  • A faint dashed preview pill shows the result on the line you’re composing. Press Tab (or ⌘=) to bake the value into the buffer as plain text.
  • Local only. No network calls — currency conversion is intentionally out of scope.
  • The whole feature can be turned off in Settings → Editor → Inline calculations.

Intelligence

  • On-device rephrase via Apple Foundation Models. Off by default; enable in Settings → Intelligence. Requires macOS 26 on Apple silicon.
  • A rephrase button in the buffer’s footer (or ⌘K) opens a menu of rephrase templates. Rephrase the selection, or the whole buffer when nothing is selected; the rewrite lands in a single edit so ⌘Z reverts it.
  • Everything is a template. Four editable defaults ship out of the box — Concise, Professional, Grammar, and Markdown format — alongside your own. Keep up to twelve; each instruction is sent verbatim to the local model and nothing leaves the device.
  • Manage templates in a two-pane editor under Settings → Intelligence, with “Restore defaults” to bring back any built-in you’ve deleted.
  • One-off custom rewrites via the menu’s “Custom…” entry — type a prompt, press Enter, and the rewrite lands in place. The instruction is discarded after use.

Window and system

  • Pin (always-on-top), opacity, and remember-bounds toggles.
  • Auto-hide on blur, quit on close, launch at login, start hidden, dock visibility, and menu-bar visibility.
  • Customizable shortcuts for summon, settings, new buffer, next/previous buffer, and delete buffer. Conflict detection in the shortcuts panel.
  • Menu-bar tray with quick access to summon, settings, and quit.
  • macOS trackpad swipe gestures move between buffers.

Export and capture

  • Copy the current buffer’s raw Markdown to the clipboard from the footer — a one-click alternative to the format-specific export actions.
  • Export the current buffer as Markdown — with a save dialog, or straight into a folder you set once in settings.
  • Send the current buffer to Obsidian or Apple Notes.
  • Capture text from any region of the screen — Scratch reads the selection and drops the recognized text into the buffer.
  • Reveal buffers folder from the File menu or settings.

Command-line interface

  • A headless scratch CLI reads and writes the same buffers as the app. Nine commands (new, list, read, write, append, title, search, path, help), atomic writes, frontmatter preserved.
  • Honors the same buffer-location setting as the app, with SCRATCH_BUFFERS_DIR as an override. Works whether the app is running or not.

Updates

  • Auto-update from downloads.bladeinstruments.com, with manual check from Help → Check for updates.

Acknowledgements

  • Settings → About lists every third-party open-source project bundled with Scratch, with its version, SPDX license, and full license text. Generated at build time from the production dependency tree.

Privacy

  • No off-machine telemetry. Scratch collects no analytics and no usage data.
  • Diagnostics are local rotating logs under your application data folder, kept for the number of days set in Settings → Privacy → Log retention (default 7). Home paths and email addresses are redacted; buffer content is never logged.
  • Nothing about how Scratch is running is sent anywhere. Diagnostic logs stay on disk; to report a problem, email [email protected] and attach a log yourself if it helps.
  • Buffer content is never transmitted.