Skip to content

Develop - #7

Merged
moilstack-dev merged 12 commits into
mainfrom
develop
Jul 25, 2026
Merged

Develop#7
moilstack-dev merged 12 commits into
mainfrom
develop

Conversation

@moilstack-dev

Copy link
Copy Markdown
Contributor

Summary

Implemented some features based on the feedback

Type of change

  • Bug fix
  • New feature
  • Refactor / code cleanup
  • Documentation update
  • Build / CI change

Testing

  • Tested locally (dev mode: npm start)
  • Tested packaged build (npm run package)
  • All existing tests pass (npm test)

Screenshots (if UI change)

Checklist

  • No API keys or secrets in the diff
  • CHANGELOG.md updated (for user-visible changes)

Add _looksLikeYaml() validation function across main and renderer processes to distinguish between actual YAML frontmatter and ordinary prose between markdown horizontal rules. Only treat `---` delimited blocks as frontmatter if they contain YAML syntax (key: value pairs), preventing false positives in frontmatter and tag extraction.
Add a Version History modal and make backups cover every overwrite (AI edits, manual saves, autosaves, restores). Implement IPC handlers (backup:write, backup:list, backup:read) and expose listBackups/readBackup in the preload. Skip empty/duplicate snapshots and keep a rolling 10-per-file store under <userData>/backups/<folder>-<hash>. Integrate the modal into the file context menu, add UI/stylesheet and versionHistoryModal.js, and snapshot current on-save via SaveManager before overwriting. Update README and CHANGELOG to document behaviour and UI.
Introduce a split editor/preview mode with UI (Split button + startup option) and Ctrl+` cycling. Add CSS for side-by-side panes and set editorArea data-view. Implement scroll-sync helpers (editor→preview and preview→editor) with bounce prevention and attach preview scroll listener. Update renderer to emit data-line anchors (headings, hr, pre, blockquote, table, lists, paragraphs) and adjust parseListBlock/parseMarkdown to preserve original line numbers so scroll-sync can map positions accurately. Ensure render is triggered when entering split mode.
Introduce a new launchBehavior value 'first-file' and implement behavior to open the top-most file in the Explorer on startup (falls back to welcome screen). Adjust startup-mode logic so restored drafts always open in edit mode while other launch outcomes follow the startupMode preference. Add two small Chrome DevTools Protocol helper scripts: _cdp_set_prefs.js to set launch prefs/lastFolder and _cdp_check_state.js to inspect renderer state for tests/dev. Updated src/renderer/index.html and src/renderer/index.js accordingly.
Delete legacy CDP helper scripts and implement a persisted untitled-buffer draft stored at <userData>/backups/untitled-draft.md. Add main IPC handlers (draft:read/write/clear), expose a draft API in preload, and switch SaveManager to an in-memory cache with initDraft/read/write/clear. Ensure draft is loaded at startup and startupMode is applied consistently. Add a Focus mode button and renderer logic to hide sidebars, maximize window, and force Split view (with restore). Make setAIVisible optionally non-persistent and add styles for active icon state. Files changed: src/main/ipc.js, src/preload/index.js, src/renderer/*, src/renderer/saveManager.js, src/renderer/sidebarManager.js. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Migrate draft content from old localStorage-based storage to new file-backed draft storage system. The migration runs once during initialization, only when the new file-backed storage is empty, ensuring no data loss when upgrading. Legacy localStorage keys are removed after migration to prevent re-running.
Enhance release notification UX by adding a persistent update button in the header, making the release toast auto-hide after 8 seconds, and repositioning the notification from top-right to bottom-center. Also extract and sync file tags when saving to keep sidebar badges updated without waiting for a folder refresh.
Modified the artifactName configuration to include the version number in the built executable filename. This allows different versions of the application to be easily distinguished by their filename (e.g., moilstack-md-1.0.0.exe instead of moilstack-md.exe).
Update CHANGELOG with condensed descriptions of new features, improvements, and bug fixes for the 1.1.1 release. Changes include the Version History panel, Update indicator in header, improved automatic backups, repositioned new-release toast, and several bug fixes including tag pills updating and draft recovery.
@moilstack-dev
moilstack-dev requested a review from a team as a code owner July 25, 2026 11:25
@moilstack-dev
moilstack-dev merged commit cd42f9f into main Jul 25, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant