nudge.

Changelog

v0.2.2

2026-06-12

Fixed

  • Duplicate sub-heading parsing — identical sub-heading names under different parent headings (e.g. "Content" under both "June 2026" and "July 2026") were merged into a single section in the expanded view. Headings are now tracked by their full hierarchical path, keeping sections separate.
  • Empty section on file open — files whose first section is a bare parent heading with no direct tasks would incorrectly show "All tasks complete!" The app now auto-advances past empty parent headings to find the first real task on open.
  • Add-task scroll position — hitting Enter in the expanded view's "Add task" input jumped the scroll position to the top. The scroll position is now preserved when adding tasks.
  • Preserve formatting in both input paths — the top "Add task" input and right-click "Add Task Below" both ignored the [ Preserve Format | Full Line ] setting. Now respects the setting: in preserve mode, bare text inherits the format of nearby tasks; in full mode, bare text is taken as-is. Explicit prefixes (#, *, [ ], 1.) always pass through. Right-click "Add Task Below" now inserts cleanly — cancelling leaves no dangling line.
  • Settings/Info browser context menu — right-clicking in the settings and info views showed the browser's default menu. Now suppressed.
  • Expanded view stale on file open — opening a new file while the expanded view was open would show the previous file's content. The expanded view now updates immediately.

v0.2.1

2026-06-05

Fixed

  • Trial hardening — strengthened license validation and offline reliability.
  • Machine fingerprinting — improved device identity verification for trial enforcement.
  • Startup performance — eliminated ~5-second launch delay. App now starts instantly.

v0.2.0

2026-06-04

Added

  • Right-click context menu — glass-style overlay on banner right-click (Refresh, Open File, Auto-Scroll toggle, Quit) and expanded task right-click (Toggle Complete, Edit Task inline, Add Task Below, Delete Task, Multi-Select mode). Multi-select with checkboxes, bulk delete/toggle, Select All/Deselect All. Drag-and-drop task reordering with smooth CSS transitions. Delete animation (fade + shrink + slide-right, 250ms).
  • Inline task editing — "Edit Task" and "Add Task Below" in the context menu open inline input fields. Respects the [ Preserve Format | Full Line ] setting.
  • Drag task in expanded view — reorder tasks via mouse drag (8px dead zone prevents accidental drags). Visual feedback with fade and emerald accent border on the drop target.
  • Settings UI overhaul — segmented button tracks replace dropdowns for position, monitor, font size, auto-hide delay, and theme. Width and opacity use stepper controls (±buttons + scroll wheel). Keyboard shortcut recording UI with Record button and Esc-to-cancel.
  • Global keyboard shortcutCtrl+Alt+Shift+N (Next Item) toggles and advances the current task. Works globally even when the app is unfocused. Auto-restores banner from hidden state after action. Configurable via settings with custom binding recording.
  • Theme system[ System | Dark | Light ] segmented track with live OS theme detection.
  • Font size presets[ Sm | Md | Lg ] three-segment toggle.
  • Simplified task formatting — canonical format: [ ] for tasks (replaces - [ ]), [x] for completed, * for bullets, 1. for numbered lists, #/## for headings, bare text for plain notes. LLM prompt, tutorial, and default template updated. Legacy formats still parse.
  • Auto-scroll — play/pause button (▶/⏸) in icon row. Configurable cadence: [ s | min ] unit toggle + stepper 0.5–5.0 (±0.5). Pauses when settings, expanded, or info views are open. Toggle also available in right-click context menu.
  • Expand button relocated — moved from icon row to content row beside the navigation arrows. Enlarged for better tap targets.
  • Quick file switcher — right-click banner to see recent files. Click any to open instantly. Up to 10 files tracked, deduplicated, most recent first.
  • Hot reloading — automatically detects when the open file is edited externally and re-parses/re-renders. No manual refresh needed.
  • Inline link parsing[label](url) in task text renders as clickable emerald links. Opens URLs and local files.
  • 7-day trial enclave — offline-first trial. App works normally for 7 days with a trial badge in settings. Inline license key entry during trial. Existing licensed users skip the trial automatically.
  • User guide — comprehensive guide replaces old tutorial. Accessible via the edit button (when no file is loaded) and "User Guide" button in the Info panel. Enriched with 10 use-case workflows (flashcard/active recall, standup, demo/presentation, exam prep, morning routine, meeting agenda, podcast/streaming, writing/research, project milestones, shopping/errands) each with step-by-step setup, file structure templates, and power-user tips.

Changed

  • Info panel restyled — glass-styled prompt container replaces dark terminal block. Labeled sections (Format, What this does, Prompt). Copy Prompt button styled with emerald hover accent.
  • LLM prompt improved — added plain-text output format spec, use case context, line conciseness rule, filler removal rule, code fence prohibition, and input→output example for better LLM compliance.
  • Accent color — global accent changed from purple to emerald (#10B981) across both themes (segment buttons, checkboxes, progress bar, links).
  • Settings layout — reorganized top-to-bottom with sectioned labels. Scrollable with emerald scrollbar. Height matches expanded view.
  • Segmented button selection — active state now uses emerald underline instead of solid emerald block, matching the glass-style aesthetic.
  • Icon styling — Settings and Info top-row icons now render as monochrome symbols matching the other icon-row buttons.
  • Tutorial carousel — enriched to 17-step walkthrough covering all v0.2 features. Progress bar + step counter ("4 / 17") appear after the welcome step. Monochrome icons. Live checkbox demo at step 4 with auto-advance.
  • App version — settings footer now reads the actual build version. During trial shows trial badge; after license shows version + "Licensed."
  • Monitor restore — restores the correct monitor selection on startup before positioning.
  • Progress bar — light theme progress bar now uses emerald accent.
  • Heading display — empty headings now appear as section headers in the expanded view. Sub-headings visually indented with proper parent-before-child ordering.
  • Auto-scroll pins banner — pressing ▶ auto-pins the banner (if auto-hide is enabled) so tasks scroll visibly. Pressing ⏸ restores auto-hide. Manual pin toggle during play clears the auto-pin.
  • Settings scrollability — scrollbars now only appear when views are open, not on collapsed containers.

Fixed

  • Auto-hide/reveal freeze — fixed a glitch where the banner would get stuck in a faded state due to a stale internal timer. Reveal now works reliably.
  • Heading hierarchy — parent headings now always appear before child headings in correct file order. Sub-headings visually indented and dimmer. Banner shows root heading with drill-down breadcrumb.
  • Drag into empty sections — dropping a task into an empty heading section now works correctly, landing the task under the right heading.
  • Opacity setting — background opacity now works without affecting text readability. Text stays fully opaque at all opacity levels.
  • Add-task input persistence — the "Add task" input stays fixed at the top of the expanded view while only the task list scrolls.
  • Expanded-view scroll — clicking a task in the expanded view no longer snaps scroll to the top. Scroll position is saved and restored.
  • Auto-updater — the auto-update check now runs on app startup as intended.

Removed

  • "Always hide (show on hover)" checkbox — redundant with pin toggle in icon row
  • Toggle Visibility shortcut — redundant with auto-hide and pin behavior

v0.1.4

2026-05-17

Added

  • Auto-update support — integrated auto-update system with signature verification. Endpoint at https://nudgehud.work/updater.json.
  • License activation system — license key activation with machine-binding to prevent sharing.
  • License paywall UI — full-screen card modal on first launch (400×380px). Emerald accent for button and link. White card with rounded corners and drop shadow.
  • Machine identifier — binds license activations to the device.

Changed

  • Accent color — license flow button and link changed from purple to emerald.
  • Auto-updater integration — auto-updater plugin integrated into the app build pipeline.
  • Dependencies streamlined — added HTTP and system identification libraries; removed heavier alternatives to keep the footprint light.
  • npm dependencies — added updater plugin package.

Fixed

  • License activation format — fixed payload encoding to match the license server's expected format.
  • "Box-in-box" visual artifact — cleaned up the license wall layout so only the card is visible, no nested container artifacts.

v0.1.3

2026-04-30

Added

  • "Create New" button — opens native save dialog, writes a markdown template with formatting instructions to the chosen path.
  • "Add Task" input field — at the bottom of the expanded view. Type and press Enter or click + to append a task under the current heading section.
  • Auto-classification — detects - [ ] (task), * (bullet), #/## (heading), numbered lists. Defaults to action task.
  • Numbered list support1. Item syntax now renders as numbered, without checkbox or bullet.
  • Pin toggle — toggles between auto-hide and pinned mode with visible icon swap.
  • File creation — writes the default markdown template to disk.
  • Append task — inserts a formatted task line under the current heading section.
  • Smart insert — finds the correct insert point under the current heading context.

Fixed

  • Trackpad scroll sensitivity — fixed multi-task skipping from momentum scroll events with debouncing and navigation locking.
  • Navigation stuck at heading boundaries — navigation lock now releases on animation completion instead of a fixed timeout, eliminating race conditions.
  • Bullet point UI — bullets now render as clean dots without checkbox borders, in both the banner and expanded view.
  • macOS white shadow during auto-hide — removed border and shadow from the faded state.
  • macOS navigation buttons hidden — navigation arrows now stay visible and properly layered in all layouts.
  • macOS autohide not reopening — increased hover detection area for reliable mouse response on macOS.

Changed

  • LLM prompt — now instructs the model to scan input and auto-generate headings.
  • Hide button repurposed — now toggles Pin mode with visible icon swap. When pinned, auto-hide is suppressed and the banner stays visible.
  • Scroll navigation lock — tightened timing so lock engages synchronously at wheel entry, preventing race conditions.
  • Banner layout — stabilized for consistent navigation control visibility across all window sizes.

v0.1.2

2026-04-29

Changed

  • Product branding — name changed to "Nudge"; integrated brand identity across icons and window title

Added

  • GitHub Actions CI/CD workflow — automated release builds for macOS and Windows triggered by version tags.

v0.1.1

2026-04-28

Changed

  • Rust parser upgraded — tasks now classified into 3 display modes: action (checkbox), bullet (dot), plain text (no indicator). Previously all tasks rendered as checkboxes.

v0.1.0

2026-04-27

Added

  • Initial release — Nudge ambient HUD
  • Tauri v2 shell — Rust backend with vanilla TypeScript frontend, no framework runtime
  • 4-pass task parser — supports 4 mixed formats: classic brackets (h1:/[ ]), asterisk bullets (*), underlined sections (----), and markdown headings/checkboxes (#/- [ ]).
  • 4 views — banner (always-on-top HUD), settings (theme/opacity/position/width/monitor), expanded (full task list), info (LLM prompt library)
  • 14-step tutorial system — barrel-roll animated walkthrough shown when no file is loaded
  • Auto-hide — banner shrinks to 2px after configurable delay; restores on mouse hover
  • Multi-monitor support — select target monitor, position presets (top-left/center/right) calculated in absolute physical coordinates
  • Light/dark themes — 22 customizable style properties per theme with glass-effect styling.
  • Progress bar and task counter — optional overlay showing completed/total
  • LLM prompt library — expandable format templates with copy-to-clipboard
  • File I/O — toggle tasks in-place ([ ][x], - [ ]- [x]), open in native editor
  • State persistence — settings are saved to local app storage on every change.