github bornova/numara-calculator v7.0.0

5 hours ago

Numara v7.0.0 represents a complete, ground-up rewrite and modernization of the application. This release introduces a fully asynchronous calculation architecture, a brand new file synchronization mechanism, built-in code folding, and a visual redesign featuring Google Sans typography.


Key Highlights

1. Asynchronous Calculation Engine (Web Workers)

To prevent UI freezes and typing lag during complex calculations, the core math engine has been decoupled from the renderer process.

  • Worker Threads: Calculations now run in a separate background thread calc.worker.js managed by a dedicated calcManager.js.
  • Non-Blocking UI: The editor remains fluid and responsive even when evaluating large math sheets, complex symbolic expressions, or recursive variables.
  • Improved Performance: Debounced calculations trigger seamlessly as you type, updating outputs with minimal CPU overhead.

2. Workspace & Folder Synchronization

Numara now supports importing and syncing entire directories directly from your local filesystem.

  • How it works:
    • Initial Alignment & Conflict Resolution: When a folder is synced, it scans for .num files. If a file is in the folder but not local, a new page is created. If content differs between a local page and a disk file, a conflict prompt allows you to choose to Overwrite Local or Sync Local.
    • Debounced Auto-Saving: Editor typing triggers an asynchronous write back to the folder file with a 500ms debounce to prevent disk activity overhead.
    • Rename & Delete Propagation: Any page rename or deletion performed inside the app automatically propagates to the corresponding file on disk.

3. Editor Refactor & Code Folding

The CodeMirror editor configuration has been rewritten for modularity and functionality.

  • File Format Update: The default file extension for Numara sheets has been changed to .num.
  • Code Folding: You can now fold math regions and header blocks (# followed by a space or a character). The calculation engine is fully aware of folding states, evaluating sub-totals dynamically.

4. UI/UX & Google Sans Typography

The user interface has been refined to feel more consistent and modern.

  • System Tray Support: Desktop apps now support running in the system tray, with platform-specific template icons (macOS/Windows) and toggle controls in settings.
  • Modern Typography: Replaced Open Sans and Roboto Mono with Google Sans as the primary typeface.
  • Responsive Layout: Rebuilt layout elements with flex layout for pixel-perfect alignment. Modals, grids, warning banners, and inputs now follow a consistent layout spacing.
  • Dynamic Sidebar: Implemented smooth transition animations and an enhanced resizable container for the sidebar/page manager.
  • Live Tooltips: Inline help and settings-related tooltips have been introduced to guide users on function parameters and units.

5. Currency & Localization Improvements

Localization settings have been overhauled to better adapt to global standards.

  • Thousand Separators: Thousand and decimal separators now automatically respect the system locale with option to choose comma or period as thousands separator.
  • Date format: In addition to respecting the system locale, users can also set a preferred date format in settings.

Note: Although previous settings should transfer from v6 to v7, it is highly recommended to perform an app reset or fresh install.

Don't miss a new numara-calculator release

NewReleases is sending notifications on new releases.