github akitaonrails/FrankMD v1.12.0

one hour ago

v1.12.0

Released: 2026-10-27

Feature and fix release built from contributor PRs by @rafaself: a redesigned Home, unclipped Settings dropdowns, and Hugo posts that land in blog/.

Added

  • Home redesign (closes #255): Home now centers a branded FrankMD introduction with logo, app description, and Find file / New Note icon buttons. Recent notes render as subtle cards with relative opening times ("10 minutes ago"), five at a time; Show more reveals the rest and scrolls, Show less returns. The entire recent section is omitted when history is empty. A dedicated Home button moved into the sidebar footer (before Library, 16px icons), the footer brand is now static, and the document header is hidden only while Home is visible — the Explorer stays reachable when the sidebar is closed, including on mobile. Localized copy in all seven locales.

Fixed

  • Settings dropdowns clipped by the dialog (closes #259): Theme, Language, and Storage menus in Settings are now anchored top-layer popovers (with a fixed-position fallback) that float above the dialog's scroll container instead of enlarging it. Placement clamps to the visual viewport, flips above when there is no room below, and follows resizes; keyboard navigation, selected-option visibility, Escape, click/focus dismissal, and focus restoration all preserved, plus an RTL-aware anchor.
  • Hugo toolbar posts landed in the notes root (closes #257): creating a Hugo post from the toolbar or Ctrl+N now defaults to blog/ (blog/YYYY/MM/DD/title/index.md dated, blog/title.md flat) and the path preview shows the same destination. Explicit context-menu folder destinations stay authoritative, and plain Markdown creation still follows the Explorer selection.
  • net-ssh security patch (GHSA-vxj5-fg65-x765): transitive net-ssh 7.3.2 → 7.3.8 via sshkit (SSH host-certificate authentication bypass), within the existing < 8.0.0 constraint.

Tests

  • Merged state post-audited cross-PR: no blockers; follow-ups applied (removed dead home.empty / editor.select_note_description keys from all 7 locales, dropped vacuous .home-empty assertions).
  • Landing-page system tests realigned with the Home redesign (hidden document header, Home introduction visible, no placeholder text).
  • 1,150 Ruby tests (4,478 assertions), 2,219 JavaScript tests (97 files), 85 system tests (665 assertions) — full bin/ci, full system suite, and hosted CI green on the release tree.

Known follow-ups (not release-blocking)

  • The blog default for Hugo posts is applied by the New Note dialog; the server-side HugoService default remains the notes root for direct API callers.
  • RTL geometry math in the new dropdown helper has no dedicated he test yet.

Don't miss a new FrankMD release

NewReleases is sending notifications on new releases.