The official installer is now ready! You can download the latest version of FoxNotes directly from my Google Drive:
System Requirements (Important)
To guarantee your security and performance, FoxNotes is built with state-of-the-art technology. Because of this, it requires two components installed on your system: Microsoft .NET 9 and Windows App SDK 1.7.
I have designed the installer to be as smart as possible: it will do its best to detect whether you already have these components, and if any are missing, it will attempt to download and install them automatically (it will also notify you on a dedicated page showing which ones you already have).
Troubleshooting (Manual Downloads)
Sometimes network connections fail, or Windows blocks automatic downloads for NSIS installers, which may cause the application to fail to launch. If the installer encounters an error while downloading the requirements, do not worry; you can install them manually from the official Microsoft servers.
Simply choose the version that matches your processor (if you are unsure, almost all modern computers use the x64 version):
1. Microsoft .NET Desktop Runtime 9.0
- Download for Windows x64 (Recommended for most users)
- Download for Windows x86 (32-bit systems)
2. Windows App SDK 1.7
- Download App SDK x64 (Recommended for most users)
- Download App SDK x86 (32-bit systems)
Version History
Important! Version numbers are not incremental. They’re dates/hours in DDMM.HHMM format. The real version number is 1.0
v1.0.2306.1833
Vault Map and visual graph
- Implemented the Vault Map as an experimental view to visualize internal relationships between notes, images, and links within the active notebook.
- Added access to the Vault Map from the notebook’s home screen.
- Implemented a graph construction system based on the current state of the vault, without interfering with synchronization or modifying user files.
- Added local graph caching to prevent unnecessary reconstructions when the vault has not changed.
- The graph now indexes notes, images, wiki references, image references, and relationships inferred by shared images.
- Added visual detection of non-existent notes or broken references within the graph.
- Added support for relationships via standard wiki links likeÂ
[[Note]]. - Added support for relationships via images usingÂ
[[File:image.png]]Â andÂ[[Image:image.png]]. - Added detection of relationships between notes that share the same image.
- Encrypted notes and images are excluded from the visual rendering of the graph for privacy and security.
- Added a safety limit to render up to 1000 nodes and 5000 relationships, displaying a warning if the graph is truncated to maintain performance.
- The Vault Map can open existing notes directly from the corresponding node.
- The Vault Map can preview existing images from image nodes.
- Added a context menu for graph nodes with available actions based on the file type.
- Unavailable, missing, or unsupported nodes display an unavailable action state.
- Reinforced navigation validation from the graph to prevent invalid paths or opening files outside the active vault.
- Image previews from the graph use secure embedded data instead of exposing direct local paths.
Vault Map 3D Renderer
- Implemented a 3D constellation-style visual renderer using Canvas inside the FoxNotes viewer.
- Added interactive graph rotation by dragging the background.
- Added zooming via the mouse wheel.
- Added camera panning usingÂ
Shift + drag background,ÂCtrl + drag background or middle mouse button. - Added individual node dragging to visually separate elements within the graph.
- Added visual focus when selecting a node, dimming unrelated nodes and highlighting direct neighbors.
- Added visual highlighting for selected nodes and nodes under the cursor.
- Added contextual display of node type, degree, and number of connections when hovering.
- Added double-click on a node to center it on the screen.
- Added quick camera reset using theÂ
RÂ key. - Added slow auto-rotation of the graph after 10 seconds of inactivity when no node is selected.
- Auto-rotation automatically stops when interacting with the graph, selecting nodes, opening menus, or displaying previews.
- Improved initial node distribution for large vaults.
- Improved visual node sizing based on connection degree.
- Added complementary visual glow to improve node readability on dark backgrounds.
- Added visual distinction for normal relationships, image references, shared images, and missing references.
- The renderer respects the visual theme configured in FoxNotes for background, text, panels, and link color.
- Adjusted the graph font to use a monospace style compatible withÂ
SpaceMono,ÂConsolas andÂCascadia Mono.
Search within the graph
- Added an integrated search bar to the Vault Map to locate nodes within large graphs.
- The search bar allows locating notes, images, and nodes by visible label, filename, or node type.
- The search bar ignores uppercase, lowercase, and accents to facilitate searching.
- Added quick access to the search bar viaÂ
Ctrl + F. - When searching, FoxNotes automatically selects and centers the first result found.
- Added navigation between results usingÂ
Enter andÂShift + Enter. - Added visual buttons to move forward and backward through results.
- Added an indicator for the number of results and the current position within the search.
- Added a visual marker with a pulsing ring and arrow to quickly identify the found node.
- Added a button to clear the search and restore the normal graph view.
Invisible graph-style directive
- Added support for the invisibleÂ
[[graph-style| ... ]]Â directive inside notes. - TheÂ
graph-style directive allows visual customization of Vault Map nodes without affecting the normal content of the note. - Added support for customizing node color viaÂ
color. - Added support for customizing node shape viaÂ
shape. - Added support for customizing the visible name of the node viaÂ
label. - Added read support forÂ
icon,Âpinned,Âx andÂy as future properties of the graph styling system. - Added color aliases in Spanish and English forÂ
red,Ârojo,Âblue,Âazul,Âyellow,Âamarillo,Âgreen,Âverde,Âpurple,Âmorado,Âorange,Ânaranja,Âgray,Âgris,Âblack,Ânegro,Âwhite andÂblanco. - Added support for hexadecimal colors inÂ
#RGBÂ andÂ#RRGGBBÂ formats. - Added node shapes:Â
rectangle,Âsquare,Âcircle,Âstar,Âdiamond andÂhexagon. - Added Spanish aliases for shapes such asÂ
rectángulo,Âcuadrado,ÂcÃrculo,Âestrella,Âdiamante andÂhexágono. - The visible name defined byÂ
label only affects the graph and does not modify the actual filename or the internal title of the note. - TheÂ
graph-style directive is hidden from the normal note rendering. - TheÂ
graph-style directive is hidden from PDF export. - TheÂ
graph-style directive is excluded from the backlinks and standard links system. - Fixed an issue whereÂ
graph-style could display as a normal wiki link within the reading view. - Fixed an issue where examples ofÂ
graph-style inside code blocks could be interpreted as actual directives. - TheÂ
graph-style cleanup system now respects code blocks delimited byÂ```, allowing syntax documentation without accidentally triggering styles.
Integration with internal navigation
- Added internal handling to return from the Vault Map to the home screen.
- Improved navigation from the graph to actual notes in the vault.
- Fixed an issue where notes opened from the graph could attempt to load with a duplicatedÂ
.txt extension or in an incorrect format. - Notes opened from the graph now use the logical name expected by the FoxNotes internal loader.
- Images opened from the graph retain their actual extension to allow correct previewing.
- Reinforced the separation between actual physical paths and logical note names within the graph navigation.
Performance, cache, and graph diagnostics
- Added validation for graph cache freshness to avoid unnecessary reconstructions.
- The graph reuses the existing cache when the vault has not changed.
- The graph automatically rebuilds when changes are detected in the vault.
- Added the graph construction process outside the main thread to prevent freezing the interface during large vaults.
- Added graph diagnostics with counts of nodes, relationships, notes, images, broken references, orphan images
v1.0.2206.2213
PDF Export and Large Documents
- Reinforced the PDF export system to handle long documents, large images, complex tables, and code blocks without causing extreme font size reduction.
- Fixed an issue where certain excessively wide content could trigger the print engine’s auto-scaling, resulting in PDFs with tiny text.
- Added stricter print rules to limit horizontal overflows in tables, images, code blocks, and preformatted content.
- Improved table handling during PDF export to respect the available page width and prevent columns or long text from breaking the layout.
- Reinforced image treatment in PDFs to prevent fixed sizes or excessively large resources from affecting the overall scale of the document.
- Improved the visual stability of PDF export by using real, extensive documents as a stress test.
Synchronization, Conflicts, and Manifests
- Added initial support for manual synchronization conflict resolution directly from the interface.
- Incorporated a conflict resolution button in the sync panel to allow users to decide which version to keep when FoxNotes detects divergences between local and remote.
- Improved data protection during conflicts: FoxNotes preserves alternative versions without automatically overwriting content.
- Fixed an issue where technical conflict files could appear as regular notes within the sidebar list.
- Internal files generated to preserve conflicts are no longer treated as regular vault notes.
- Reinforced the cleanup of
.conflict.technical entries to prevent them from contaminating the local or remote manifest. - Improved the handling of old conflicts where a remote entry no longer existed in the manifest, preventing failures during manual resolution.
- Reinforced reconciliation logic to avoid synchronization actions generated from phantom or obsolete entries.
- Added a pre-sync plan cleanup to remove technical entries, consolidate active duplicates, and clean up orphaned states before calculating actions.
- Improved the consolidation of duplicate entries by filename within manifests.
- Reduced sync errors caused by inconsistent states between the physical file, local manifest, and remote manifest.
- Improved the handling of tombstones and known states on both ends to prevent unnecessary conflicts during subsequent synchronizations.
Downloading and Restoring Remote Vaults
- Reinforced the download process for existing remote vaults.
- Vault downloading now filters technical conflict entries and avoids restoring them as regular notes.
- Added validation against active duplicates pointing to the same local file during a vault download.
- Improved tolerance toward old remote manifests or those contaminated by previous conflicts.
- The cloning process now consolidates duplicate entries before starting the download to prevent failures caused by repeated files.
- Improved error messages during vault downloads to more clearly identify inconsistencies between the manifest and physical files.
- Reinforced the use of a temporary download folder to avoid overwriting an existing vault or leaving incomplete restorations.
Internal Maintenance and Stability
- Added internal routines to clean up technical entries, orphaned states, and duplicates before executing critical synchronization operations.
- Improved consistency between the local manifest, remote manifest, and existing physical files.
- Reduced the likelihood that old conflicts or interrupted syncs will continue to affect future synchronizations.
- Identified the need to incorporate a manual maintenance tool such as “Clean and Consolidate Vault” to repair manifests, recalculate states, and diagnose inconsistencies directly from the interface.
- Improved the overall resilience of FoxNotes against real-world scenarios of prolonged use, large documents, synchronization conflicts, and vaults with accumulated history.
v1.0.2106.1846
Navigation and Note List
- Incorporated a search bar for the note sidebar.
- It is now possible to filter notes by name in real time, making it easier to navigate large notebooks.
- Improved navigation in vaults with numerous notes, reducing the need to manually scroll through extensive lists.
- The note list search bar operates independently from the search function within the currently open note.
- The open note remains selected as long as it continues to appear within the filtered results.
- The home screen retains the correct count of total notes and encrypted notes, even when a filter is active.
- Integrated the new search bar with the FoxNotes visual theme to maintain consistency with the Sidebar and the rest of the interface.
WebView Behavior and Reading
- Fixed an issue where returning from the editor after saving a note could cause the reading viewer to reload and automatically jump back to the top of the document.
- Improved WebView behavior when updating an edited note, preventing abrupt navigation jumps during reading.
- The reader now better preserves the reading position when returning from the editor.
- Reduced unnecessary reloading of the open note when returning from modal screens related to editing.
- Enhanced the experience when working with long notes, especially when editing a section and then continuing to read from an advanced position in the document.
- The visual update of the note still occurs after saving changes, but without unnecessarily resetting the user’s navigation.
Downloading Existing Vaults
- Added the option to download an existing remote vault into a new local folder.
- FoxNotes can now search for available vaults within a compatible provider and allow the user to choose which one to download.
- Before initiating the download, a summary of the selected vault is displayed, including its name, file count, approximate size, and destination folder.
- The download creates a new local folder to prevent overwriting existing information without confirmation.
- Improved the recovery or setup experience on new devices, allowing users to restore an already synchronized vault without manually copying files.
- Upon completion of the download, the vault is registered as an active local notebook.
- The workflow was initially tested using local backup as the provider.
- Dropbox remains pending for a future release.
v1.0.0306.1621
Wiki Editor and Editing Experience
- Redesigned the Wiki Editor interface to provide a more comfortable, modern, and consistent editing experience throughout FoxNotes.
- Reorganized the editor toolbar, grouping related actions such as formatting, headings, links, images, tables, save, and cancel operations.
- Added Undo and Redo shortcuts for editing sessions.
- Added support for H1, H2, and H3 headings directly from the toolbar.
- Improved internal link creation through direct selection of existing notes within the active vault.
- Added a visual image picker with thumbnails for browsing and inserting images stored within the vault.
- The image picker now includes name-based search, page navigation, and limited result loading to improve performance in vaults containing large numbers of images.
- Separated the workflows for inserting existing images and importing new images to simplify content creation.
- Improved table insertion through automatic templates adapted to the user’s configured language.
- Expanded editor localization to cover buttons, messages, dialogs, and content insertion elements.
- The editor now automatically respects the language configured in FoxNotes without requiring an application restart.
- Integrated the editor appearance with the FoxNotes theme engine.
- Colors configured in the Appearance section are now correctly reflected in both the editing area and the preview pane.
- Improved visual consistency between the editor, renderer, main interface, and preview components.
- Refined the visual presentation of the editing area to improve identification of scrolling and navigation regions within large documents.
- Improved editor resizing behavior for more consistent adaptation to different window sizes.
- Adjusted synchronization between editing and preview rendering to provide a smoother writing experience.
- Optimized the handling of visual and temporary resources used by the preview system and image picker, reducing unnecessary accumulation during long editing sessions.
- Improved overall editor stability during editing, note navigation, and multimedia resource insertion.
Synchronization, manifests and media management
- Fixed an issue that could accidentally delete images used by encrypted notes during certain save operations and media integration workflows.
- Improved the handling of images associated with encrypted notes to prevent valid vault files from being incorrectly treated as temporary resources.
- Enhanced media protection during encrypted note packaging and update operations, reducing the risk of unintended resource loss.
- Fixed an issue that prevented missing files from being properly restored when they still existed on another device or synchronization provider.
- The synchronization engine can now recover missing files from the available counterpart whenever a valid restoration source exists.
- Improved detection of missing files during synchronization plan generation, preventing situations where certain items could remain permanently out of sync.
- Refined reconciliation logic between local and remote manifests to better distinguish between intentionally deleted files and files that disappeared due to external causes.
- Reduced false conflicts during synchronization when a file had been deleted on one side but still matched the last known content on the other.
- Improved handling of deletion history records to avoid unnecessary conflicts when propagating legitimate deletions.
- Strengthened validation of remote deletion operations to prevent errors caused by outdated entries or temporary inconsistencies between manifests and physical storage.
- Optimized detection and resolution of inconsistent states caused by missing files, partial restorations, or interrupted synchronization operations.
- Improved cleanup and consolidation of internal synchronization states across devices and providers.
- Reviewed media management within vaults in preparation for future improvements related to reference tracking and synchronization optimization.
- Improved overall synchronization stability in scenarios involving accidental file loss, restorations, conflicts, and content recovery.
v1.0.3105.1933
Operational Security and Fault Tolerance
- Improved startup reliability under Windows and MAUI, preventing initialization failures during first launch and when no workspace has been configured.
- Reworked application initialization flow to avoid UI operations being executed before the main window is fully available.
- Added safe handling for situations where the workspace folder is renamed, moved, disconnected, or becomes unavailable while the application is running.
- FoxNotes now automatically cancels pending synchronization tasks and clears transient state when the workspace becomes unavailable, preventing operations against invalid paths.
- Strengthened validation checks before critical operations such as note loading, creation, editing, renaming, deletion, PDF export, password changes, backlink rebuilding, and synchronization.
- The editor now detects workspace loss during editing and prevents accidental saves without closing the editor or discarding currently opened content.
- Improved resilience when working with unavailable folders, preventing silent failures and unexpected behavior caused by invalid file-system paths.
- The preview system now remains operational even when images or other resources cannot be resolved because the workspace is temporarily unavailable.
Home Screen and Empty Workspace Experience
- Added a dedicated workspace home screen that is displayed whenever no note is currently open.
- The home screen provides an overview of the active notebook, note counts, encrypted note counts, synchronization status, and contextual information.
- Home screen appearance now follows the active theme and adapts automatically to user-selected colors.
- Added support for displaying the official FoxNotes mascot artwork instead of a generic fox emoji.
- Added direct access to the Privacy Policy from the home screen.
- External web links are now automatically opened in the system browser rather than inside FoxNotes.
- Improved internal wiki navigation to preserve note creation workflows, unresolved note links, and internal navigation behavior.
Stability and Release Build Improvements
- Fixed initialization timing issues that could occasionally leave the main content area blank in Release builds.
- Improved startup synchronization between the user interface and rendering engine to reduce race conditions.
- Increased reliability of UI refresh operations during application startup.
- Verified correct operation on both x64 and x86 Release builds, including low-performance Windows hardware.
Localization and Language Support
- Expanded translations to cover synchronization workflows, status messages, startup screens, password dialogs, and recently added interface elements.
- Added localization support for the workspace home screen.
- Improved dynamic language switching across synchronization-related views and dialogs.
- Reduced the number of untranslated interface elements appearing when running FoxNotes in English.
Synchronization Providers
- Strengthened the Local Backup provider for real-world usage scenarios involving external drives, NAS devices, removable media, and multi-vault environments.
- Improved validation of backup destinations to prevent invalid, inaccessible, or unsafe configurations.
- Added safeguards against path traversal and invalid file-system operations.
- Improved handling of temporary synchronization files to prevent them from affecting synchronization inventories.
- Reduced the risk of file corruption during interrupted write operations.
- Added automatic cleanup of leftover temporary synchronization files.
- Improved validation to prevent recursive backup configurations involving the active workspace.
- Added write-access testing during backup configuration to detect permissions or storage issues before settings are saved.
- Synchronization now remains pending when a backup destination is temporarily unavailable rather than interrupting normal application usage.
WebDAV, Docker and Cross-Platform Validation
- Completed real-world validation of the WebDAV synchronization provider against multiple independent server implementations.
- Verified compatibility with Microsoft IIS WebDAV, Apache WebDAV, and Nextcloud running on Docker infrastructure.
- Confirmed support for all core synchronization operations required by FoxSync.
- Improved compatibility with servers that implement WebDAV collections and resource handling differently.
- Verified interoperability with standard Nextcloud WebDAV deployments.
- Confirmed successful synchronization across multiple devices using self-hosted WebDAV infrastructure.
- Validated large synchronization workloads through extensive real-world testing without conflicts or data-loss scenarios.
- Confirmed correct operation of manifest-based synchronization, conflict detection, tombstones, renames, and incremental updates across heterogeneous WebDAV backends.
- Consolidated the remote synchronization architecture in preparation for future providers and cloud integrations.
Google Drive Integration and OAuth Security
- Completed functional Google Drive synchronization support using OAuth 2.0.
- Reduced requested Google permissions to the minimum required by the application.
- Adopted a least-privilege access model based exclusively on application-managed files.
- Removed support for requesting broader Google Drive permissions that are unnecessary for FoxNotes operation.
- Simplified the authentication architecture to reduce configuration mistakes and improve security.
- Verified compliance with Google’s non-sensitive permission requirements.
- Confirmed that the Google Drive integration no longer requires sensitive or restricted scope verification.
- Validated interoperability between Google Drive and the existing manifest-based synchronization architecture.
- Prepared the synchronization framework for future cloud-provider integrations using the same decentralized design principles.
Auto-Sync and Synchronization Experience
- Improved handling of temporary synchronization failures caused by connectivity issues, unavailable devices, disconnected storage, or remote-provider outages.
- Synchronization status indicators now better reflect recoverable situations and pending operations.
- Consolidated Local Backup as a practical automatic backup solution powered by the same synchronization engine used by remote providers.
- Identified the need for visible progress indicators during long-running synchronization and provider-configuration operations.
- Planned the introduction of progress and loading dialogs to improve user feedback during network operations.
- Observed that some self-hosted and high-latency environments may require significantly longer initialization times, reinforcing the importance of progress visibility.
User Interface and Theme Engine
- Improved visual integration between the startup screen, synchronization views, note lists, dialogs, and the active theme.
- Enhanced synchronization context visibility by displaying provider information and synchronization status more prominently.
- Increased visual consistency throughout the application interface.
Technical Cleanup and Cross-Platform Readiness
- Reorganized startup logic to improve reliability and reduce risks associated with asynchronous initialization.
- Added additional safeguards against invalid paths, missing folders, and unexpected file-system changes.
- Verified correct operation on low-performance x86 hardware to expose race conditions and startup issues that may not appear on modern systems.
- Completed interoperability testing across Windows, Docker, WSL2, Apache WebDAV, Nextcloud, and mixed deployment environments.
v1.0.2205.1846
Security and Memory Management
- Adjusted
MemoryStreaminitialization withpubliclyVisible: falseto prevent direct exposure of the decrypted buffer viaGetBuffer(), mitigating the risk of API Misuse without breaking compatibility with the renderer. - Replaced
Array.Clear()invocations on passwords withCryptographicOperations.ZeroMemory(), preventing the .NET JIT compiler from optimizing away the erasing of sensitive memory. - Hidden the status bar at the WebView level to prevent internal temporary paths from being exposed.
Wiki Parser, Rendering, and PDF
- Fixed a critical bug where code blocks delimited by triple backticks failed to emit a closing tag, causing subsequent content to overflow to the end of the document.
- Fixed the table system to eliminate ghost cells, improve handling of empty and multiline cells, and maintain a consistent column structure.
- Refactored the PDF Service to utilize the same two-pass table parser, improving structural consistency between the preview layout, the render engine, and the generated PDF document.
- Fixed an identity collision bug within the Table of Contents.
- Repaired the backlinks engine, which had broken following a previous update.
Editor
- Fixed a bug where the H1 button generated
= text =instead of the correct formatting, and where H2 generated the format corresponding to H1. - Added editor toolbar buttons for Underline, Code Blocks, and Inline Code.
- Fixed the visibility of scrollbars within the Wiki editor under Windows by customizing the native handler.
Themes and Visual Customization
- Added color customization options for headers, text, code blocks, and table borders.
- Light/Dark presets now act strictly as previews: they populate the fields instantly without persisting changes until confirmed via the SAVE button.
- Fixed the “Change Directory” button to maintain optimal readability in light mode without affecting the overall application theme.
Localization
- Added complete Spanish and English localization keys for the new table and code configuration sections.
Prior Updates
v1.0.2005.1117
- Removed the default MAUI/Shell window frame; the window now utilizes a custom TitleBar integrated directly into the FoxNotes user interface.
- Implemented native window extension via WinUI, allowing the entire application to render as a single, cohesive visual surface.
- User-configured colors now correctly propagate to the top title bar, Sidebar, and the rest of the window interface.
- Fixed visual inconsistencies between the Sidebar, HeaderBar, and the new extended title bar.
- Adjusted internal paddings and layouts to ensure compatibility with the new visual window structure.
- Fixed an HTML temporary file locking issue caused by WebView2 when reloading dynamically rendered notes.
- Improved the internal write handling of temporary files utilized by the HTML rendering engine.
v1.0.1905.2210
- Fixed an issue in the text editor where selecting text from right to left could cause accidental deselection or erratic behavior.
- Fixed the interpretation of tags dependent on localized keywords (e.g., “Archivo:”), ensuring seamless compatibility across both Spanish and English interfaces.
- Restructured the text editor to eliminate unnecessary context menu options and improve overall editing stability.
- Separated the configuration window into an independent view to improve internal project organization and UI maintainability.
v1.0.0905.2108
- Enhanced the application’s Note Editor by implementing a reactive split-screen live preview.
- Isolated the Encryption Services and the
SecurePasswordHolderlogic away from cryptographic keys and rasterization processes. - Consolidated the preview generation workflow into its own dedicated service.
v1.0.0805.0853
- Implemented a bivalent
.FOXfile structure: functioning either as a unified Container (Notes + Images) embedded with SHA256 hashes, or as a pure Note file. Encrypted images are no longer saved as separate files; instead, they are embedded directly into the container’s JSON payload, fully resolving the tracking issues found in the previous version. - Fixed an issue during PDF document generation where images exceeding ~2MB on disk could trigger an exception in the Base64 encoder feeding the PDF print pipeline.
v1.0.0405.2018
- Implemented text note encryption. Notes created in this version also have their corresponding image assets encrypted; however, a collision may occur if two notes protected by different passwords reference an image sharing an identical filename.
v1.0.0305.1147
- Improved PDF rasterization layouts to guarantee that formatting does not break tables and that images consistently autoscale to fit the viewport width.
- Added full localization support for the English language.
