RELEASE NOTES

Every release, from the first build to today.

Roselt Calculator went from a standalone web calculator foundation to a fully packaged, multi-platform, multi-language app in a series of focused releases. This page tracks what changed in each version from 1.0.0 through 12.2.0.

Version history

Desktop reliability and faster launches

A release focused on making the desktop app feel steadier and faster, with preferences that follow portable installs, smoother window startup, and better behavior when closing the app.

  • Added local settings storage beside the app install, so portable installs and Steam Cloud can keep theme, language, shortcut, repeat-equals, and window preferences.
  • Settings now stay in sync on launch and quit so preferences survive restarts more reliably.
  • Window size and position are now restored when the app relaunches.
  • Fixed a closing bug that could leave the app stuck as "Not Responding" until it was force-closed.
  • Reduced the blank flash on startup by showing the window after the first content is ready.
  • Improved launch performance by loading the graphing math engine only when graphing features need it.
  • Reduced startup loading by only loading the active theme and the styles needed for the current calculator mode.
  • Theme previews in Settings now prepare in the background and reopen faster after the dropdown has already been viewed.
  • Windows builds now embed "Roselt Calculator" and the app icon in the exe so Task Manager shows the correct name and logo instead of "Electron".
  • Added Android packaging support so Roselt Calculator can now be shipped as an APK.
  • Added macOS app bundle support, including Apple Silicon builds for modern Macs.
  • Added native Linux and SteamOS desktop packaging for Steam distribution.
  • Reduced the packaged app size so desktop builds install and launch faster.
Desktop Settings Performance Windows Linux SteamOS macOS Android

UI polishing: converter selection, formatting, and layout

A small release focused on converter UX, numeric formatting, and layout improvements.

  • Selected converter amounts now display bold to make the active field clearer.
  • Added thousands/grouping separators for converter values and meta lines for readability.
  • Enhanced the Time converter "About equal to" meta to show grouped unit values (years, weeks, days).
  • Enabled a side-keypad layout that lets the left value display scale and fill available space on wide viewports.
  • Adjusted left-display typography and vertical centering so large numbers stretch visually.
  • Added adaptive vertical spacing between top and bottom converter values when there is extra space.
  • Styled converter keypad actions (CE, Backspace) to match operator button backgrounds for consistency.
  • Applied operator background color to the first two rows in Standard mode for visual consistency.
  • Fixed a bug where opening or selecting a unit from a converter dropdown would change which numeric field was active — the active field now only changes when the numeric value is clicked.
  • Made the About/version display dynamic: the app now pulls the version from package.json at runtime and updates the Settings view automatically.
UI Converters Formatting

Polish, expanded themes, and platform publishing

The 12.0.0 cycle focused on refinement across every surface — a fuller theme catalog, dedicated per-theme CSS files, theme preloading, currency localization, settings search, a Steam Store build, and a live preview window on the public site.

  • Added a live preview window for the calculator on the public website with controls and a responsive frame.
  • Added search functionality for themes and languages in the settings panel.
  • Preserved settings scroll position when toggling preference toggles.
  • Each theme now has its own dedicated CSS file for cleaner loading and isolation.
  • Added theme preloading and enhanced theme management in the app shell.
  • Added Matrix Rain theme with SVG logos and JSON configuration.
  • Expanded the theme and language catalog significantly.
  • Added currency localization support via locale-currency integration.
  • Added AppImage packaging script for Linux distributions.
  • Finalized Flathub manifest and submission documentation.
  • Added Steam Store publish preparation work.
  • Refactored code structure for improved readability and maintainability.
  • Added button digit text color as a dedicated CSS variable.
  • Added a script to generate app screenshots.
  • Refactored window dimensions and minimum size for better layout handling.
  • Updated navigation buttons to use anchor tags for better accessibility and routing.
  • Fixed CSS variable usage for settings expander border radius.
Themes Localization Settings Linux Polish

Rebranding, multilingual support, and themes showcase

The project was formally renamed to Roselt Calculator, a large batch of new themes and languages were added, and a public themes showcase page was built with live embedded calculator previews.

  • Rebranded from the working name to Roselt Calculator.
  • Added multilanguage support with a large initial set of interface translations.
  • Added a significant expansion of new languages and themes in one release.
  • Introduced a new Themes Selection UI for browsing and applying themes in-app.
  • Built a public themes showcase page with live calculator previews and a full language index.
  • Improved button grid layout for Scientific and Programmer modes.
  • Updated logos and screenshots to reflect the new branding.
  • Changed Electron app to start on the primary monitor in the mobile UI layout.
Rebranding Languages Themes Showcase

Desktop builds: Windows portable, Flatpak, and AppImage

Desktop packaging was expanded beyond the initial Electron integration to include portable Windows builds, Flatpak support for Linux, and the foundation for AppImage distribution. A public-facing website was launched alongside packaging work.

  • Added Flatpak support for Linux desktop environments.
  • Added a portable build option for Windows via electron-builder.
  • Updated Electron and packager dependencies to the latest versions.
  • Applied various fixes and improvements for the Windows app experience.
  • Removed the old native Windows app implementation.
  • Built a public-facing landing website for the installable app.
  • Added arrow indicators to settings expander summaries for better UX.
  • Restructured file layout for clarity.
  • Removed unused service-worker cache and fetch-event handling.
Electron Flatpak Windows Website

Theming system, PWA, and style consistency

This release introduced the Progressive Web App manifest and service worker, introduced a consistent CSS variable theming system, and improved button hover states across the entire interface.

  • Added Progressive Web App support including a web manifest and service worker.
  • Introduced CSS variables for consistent theming across all components.
  • Updated CSS variables for improved theming and visual consistency across modes.
  • Enhanced button hover effects using new CSS variables for richer UI feedback.
  • Fixed the date field rendering by correcting the element type used.
  • Updated the site header text case for consistency.
PWA Theming Styles

Electron integration, nerdamer, and unit converter expansion

The app was migrated to Electron for the first time, bringing nerdamer as the symbolic math engine for the graphing calculator. The unit converter was also expanded with a larger set of measurement categories.

  • Migrated the app to Electron for cross-platform desktop packaging.
  • Integrated nerdamer as the symbolic math engine powering graphing expressions.
  • Updated nerdamer script source and removed local dependency copies.
  • Expanded unit converter categories with additional measurement types.
  • Added volume unit sub-categories with more conversion options.
  • Added a factorUnit function for improved unit handling.
  • Improved implicit multiplication handling in Scientific mode expressions.
Electron Nerdamer Units Scientific

Tooltips, dynamic icons, and settings polish

A global tooltip system was added across buttons and memory actions. Settings received dynamic app icon support that updates based on the active theme, and the graphing calculator was refined with compact mode and icon improvements.

  • Implemented a tooltip system across the full application with dynamic descriptions.
  • Added detailed tooltip data attributes to all button and memory action elements.
  • Implemented enhanced tooltip functionality across graphing, scientific, and programmer views.
  • Settings now dynamically updates the app icon based on the selected theme.
  • Enhanced the graphing calculator UI with a compact display mode and improved icon rendering.
  • Added a clear history function for the programmer mode history panel.
Tooltips Settings Graphing

Date calculator, history, and memory overhaul

The date calculator mode was built from the ground up, complete with date-specific history tracking. History and memory management were also refactored across all modes for more consistent state handling.

  • Implemented the Date Calculator with full UI and date range / offset calculations.
  • Added date calculation history support with state management integration.
  • Refactored history and memory management for improved and consistent state handling.
  • Enhanced the programmer mode display panel, controls, and button actions.
  • Added a history panel with clear history support in Programmer mode.
Date History Memory Programmer

Currency and unit converter

Converter tooling was added as a first-class mode, covering currency exchange with live rate updates, a currency selection menu, unit conversion across multiple categories, and dedicated converter history tracking.

  • Added currency conversion mode with a full keypad and display.
  • Implemented a currency selection menu with dynamically populated options.
  • Added currency rate update functionality with state management.
  • Refactored internal naming from "currency" to "converter" for broader scope.
  • Implemented commitConverterHistory and enhanced converter state management.
  • Added converter history tracking for consistent cross-mode history behavior.
Currency Converter History

Graphing calculator

A full graphing calculator was built and integrated into the app shell, with expression management, viewport controls, a settings panel, dynamic operator menus, and a compact display mode for smaller windows.

  • Built the graphing calculator layout, keypad, and expression management system.
  • Implemented graphing functionality with viewport pan and zoom controls.
  • Enhanced graphing calculator styles and layout for improved responsiveness.
  • Updated graph status visibility and styling for clearer user feedback.
  • Added a graph settings panel with viewport reset functionality.
  • Implemented a graphing menu with dynamic operator options and UI enhancements.
  • Refactored the graphing calculator UI into focused tool groups.
  • Enhanced graphing expressions with analysis features.
  • Set default graphing expressions and status messages for initial state.
Graphing New mode

Programmer mode

Programmer mode was added with full bitwise operations, alternate base displays (HEX, DEC, OCT, BIN), a bit-flip panel, and a dedicated programmer display panel for inspecting values at different word widths.

  • Implemented Programmer mode with enhanced display and control layout.
  • Added bitwise operations: AND, OR, XOR, NOT, bit shifts, and rotations.
  • Added alternate numeral base display (HEX / DEC / OCT / BIN).
  • Added the programmer bit-flip panel for direct bit toggling.
  • Added the programmer display panel for word-width value inspection.
  • Wired up button actions and state management specific to programmer workflows.
Programmer Bitwise New mode

Scientific mode

Scientific mode was introduced with a full set of trigonometric, logarithmic, and power functions. Angle mode cycling (DEG / RAD / GRAD) was implemented alongside an updated toolbar and button layout.

  • Implemented Scientific mode with operator menus, button layouts, and enhanced functionality.
  • Added angle mode cycling between DEG, RAD, and GRAD with a dedicated button.
  • Refactored scientific angle buttons and updated styles for the angle toggle.
  • Enhanced Scientific mode UI with new button icons and an updated toolbar.
  • Improved implicit multiplication handling for scientific expressions.
  • Added side panel auto-show logic based on window dimensions.
Scientific Trigonometry New mode

Initial release — web calculator foundation

The first public release established the standalone web calculator shell with Standard mode, a Windows Calculator-inspired layout, responsive breakpoints, a settings page, and the navigation structure for all future modes.

  • Shipped the standalone web calculator with a Standard arithmetic mode.
  • Built the app shell with Windows Calculator UI parity as the design baseline.
  • Implemented responsive layout breakpoints for phone, tablet, and desktop.
  • Added a settings page with expandable preference sections.
  • Matched native navigation groups and added placeholder converter views.
  • Added URL synchronization for mode routing and default mode support.
  • Fixed relative paths for assets across HTML and JavaScript files.
  • Set up the initial project structure based on the Windows Calculator open-source foundation.
Standard Foundation Initial release