Version 0.5.0
Code blocks with syntax highlighting • Block math with TeX→SVG rendering • Text highlighting in the Card Editor
0.5.0 · macOS, iOS
New Features
Code Blocks (macOS & iOS)
Author and study code directly on your cards, with first-class rendering on both desktop and mobile:
- Code Block Element: A new Card Editor element for multi-line code, with language selection and syntax highlighting for over a dozen popular languages
- Preview Pipeline Support: The preview generation pipeline was extended so code blocks render into card preview thumbnails exactly as they appear in the editor
- Mobile Study Mode Rendering: A new
CodeBlockViewon iOS renders the same code blocks using HighlightSwift, keeping the study experience visually consistent across platforms
Block Math with MathJax (macOS & iOS)
Write real math on your cards and have it rendered crisply everywhere you study:
- Block Math Authoring: A new block math element in the Card Editor accepts LaTeX/TeX input and renders it as an SVG inside the card
- Shared Single Renderer: The app now uses
mathjax-fullas the single TeX-to-SVG renderer driving the editor preview, card preview thumbnails, and iOS Study Mode — so you see the same bytes everywhere, no platform drift - Mobile
BlockMathView: iOS Study Mode now renders block math fragments through a dedicatedBlockMathView, withTextElementViewhandling inline math fragments alongside regular rich text
Text Highlighting (macOS & iOS)
- Highlight Mark in the Editor: A new highlight mark is available across the Card Editor, sitting alongside bold, italic, color, and the other text formatting options
- End-to-End Rendering: The ProseMirror parser — on both desktop and iOS — now understands the highlight mark, so highlighted text round-trips from authoring to Mobile Study Mode without losing formatting
Improvements
Card Editor Toolbar (macOS)
- Responsive Toolbar: A new toolbar item registry plus a responsive layout hook let the EditorToolbar adapt cleanly to available width instead of clipping or wrapping unpredictably
- Refreshed Iconography: Updated and replaced a set of EditorToolbar icons, with color and spacing polish across EditorToolbar and EditorPanel for a more consistent feel
Mobile App Polish (iOS)
- Rich Text Fragments:
ProseMirrorParsernow returns a structuredRenderFragmentarray, andTextElementViewrenders from those fragments — a cleaner foundation that made code blocks, block math, and highlighting possible on iOS - Header Consistency:
LibraryViewandProfileViewheaders were refactored for a more consistent look and layout
Bug Fixes
Card Editor (macOS)
- Save Button Accuracy: Save logic and empty-card preview handling were tightened, and dirty-card tracking now stays accurate across all in-editor and cross-window operations — so the EditorPanel Save button only fires when there are actually cards with unsaved changes
- No More Phantom Unsaved Cards: A new
updateElementGeometryaction prevents layout auto-corrections from marking cards dirty when the user hasn’t actually touched them - Cross-Window “Edit Card” to Same Deck: When the editor receives an
editor-initevent for a card in the currently active deck, it now navigates directly to that card by id — preserving dirty-card state across the switch with no modal interruption - Minimized Editor No Longer Blocks: Opening a card into an existing, minimized editor window now unminimizes, shows, and focuses the window on the main thread before emitting
editor-init, fixing an issue whereUnsavedChangesModalwould silently block the user from loading a different card
Auto-Updater (macOS)
- Settings Page Update Button:
pendingUpdatewas promoted from auseRefto module scope so the “Install & Restart” button on the Settings page can actually use it, letting users install and restart from Settings when an update is detected (previously only the S menu entry could)
Technical Updates
- Added
mathjax-fullas a shared TeX→SVG rendering dependency;PACKAGE_VERSIONinvite.config.tsis hand-kept in sync with the installed version - Card Editor toolbar architecture moved to an item-registry + responsive-layout hook pattern, making it easier to add or reorder toolbar items going forward
- iOS rich text rendering migrated to a
RenderFragment-based pipeline, unlocking code blocks, block math, and highlight marks on Mobile Study Mode
Feedback
Found a bug or have a feature request? We’d love to hear from you:
- Report issues on our Contribute page
- Email us at support@supercards.io
Thank you for using SuperCards!