Changelog

Every shipped change to StashSync.app, newest first. RSS.

  1. Introduces an API Keys settings tab for managing integration keys, adds a REST API endpoint reference panel, and adds MCP server configuration guidance for AI assistant integrations.

    Read full notes →
  2. Adds customizable tour popover button texts, a backup history list with download support, and contextual help links throughout the app.

    Read full notes →
  3. Redesigns the Toast notification component with a new variant structure, and reskins driver.js tour popovers to match the app's design system.

    Read full notes →
  4. Adds search functionality to the StashPicker and TagPicker, improves the BookmarkEditor toolbar, and unifies button styles behind a shared Button component.

    Read full notes →
  5. Makes the note editor layout responsive on small screens for a better mobile editing experience.

    Read full notes →
  6. Reworks the Trash view with filters and bulk actions, introduces a select-mode toggle and floating bulk action pill across all views, and improves the Settings modal layout.

    Read full notes →
  7. Reworks the cloud backup UX with enhanced frequency options and splits bookmark import/export into its own dedicated settings tab.

    Read full notes →
  8. Refactors onboarding to remove the inline demo data loader, simplifying the first-run flow.

    Read full notes →
  9. Overhauls the sidebar UI/UX, unifies all settings into a single two-panel modal, replaces add-forms with inline search-and-create, and adds item count badges to stash/tag navigation entries.

    Read full notes →
  10. Improves accessibility across embedded content components, enhances the EmbedBookmarkCard preview handling, and increases the maximum width of the Tiptap editor container.

    Read full notes →
  11. Fixes an issue where pressing Escape while the command palette was open would close the Note Editor instead of dismissing the palette.

    Read full notes →
  12. Adds a recent items list to the Command Palette and improves keyboard navigation within it.

    Read full notes →
  13. Completely overhauled the embedded note renderer to faithfully reproduce all content types, and added an in-editor features inventory document.

    Read full notes →
  14. Simplifies the bookmark data model by removing unused fields, and cleans up related demo content.

    Read full notes →
  15. Adds demo content for new users, unifies the onboarding flow into a single modal, and adds ini language support to the code block syntax highlighter.

    Read full notes →
  16. Extends the note editor with find-and-replace, note/bookmark embeds, emoji picker, and several new Tiptap extensions.

    Read full notes →
  17. Adds table insertion, inline/block math rendering, callout blocks, and a reworked block controls toolbar to the note editor.

    Read full notes →
  18. Syncs the stash filter with the sidebar selection, adds a /file slash command in the note editor, and highlights search matches in the command palette.

    Read full notes →
  19. Enhances the sync status toast with a manual reconnect button and visual improvements for a better offline-recovery experience.

    Read full notes →
  20. Adds an untag action icon to the bulk action bar and improves its layout for better responsiveness and accessibility.

    Read full notes →
  21. Replaces the inline pin button with a context-aware row actions menu on note and bookmark items, and overhauls the dashboard list view layout.

    Read full notes →
  22. Fixes the post-checkout redirect URL so that it correctly points to the production app URL in production and to localhost during development.

    Read full notes →
  23. Adds Markdown import and export for notes, switches LemonSqueezy billing to production mode, and fixes an invalid store ID.

    Read full notes →
  24. Fixes a critical data mapping error in the Yjs provider and improves wiki-link detection to avoid false positives.

    Read full notes →
  25. Prevents an incorrect offline redirect when a user creates or duplicates a note while the app is in offline mode.

    Read full notes →
  26. Disables file upload and management features when the app is offline, and fixes a crash when both the network and the RSC cache are unavailable.

    Read full notes →
  27. Removes the unused Clerk webhook secret variable from the deployment workflow to clean up CI configuration.

    Read full notes →
  28. Integrates Sentry for real-time error tracking and performance monitoring across the application.

    Read full notes →
  29. Migrates note navigation to client-side SPA-style routing so that notes open and navigate without triggering full network requests, improving offline reliability.

    Read full notes →
  30. Enhances the offline experience with live sync status indicators and user feedback when notes are created while offline.

    Read full notes →
  31. Fixes the service worker's failure to recognize the Clerk proxy domain as an authenticated origin, and improves the WebSocket reconnection flow after going offline.

    Read full notes →
  32. Adds manual reconnect support to the Yjs WebSocket provider and bypasses the Clerk token cache on reconnect to ensure fresh authentication.

    Read full notes →
  33. Serves all /notes/* routes from a shared app shell when the device is offline, enabling seamless navigation within the notes section without a network connection.

    Read full notes →
  34. Precaches authentication route shells at service worker install time so that the sign-in and sign-up pages are available offline.

    Read full notes →
  35. Fixes a CI shell script incompatibility when extracting the build ID on POSIX-strict environments.

    Read full notes →
  36. Replaces the Serwist-based service worker with a custom native service worker implementation for greater control over caching and offline behaviour.

    Read full notes →
  37. Incremental update to the build process for stability and correctness.

    Read full notes →
  38. Fixes a bug where the service worker was incorrectly caching Clerk authentication API responses, causing stale auth state.

    Read full notes →
  39. Improves service worker caching strategy for React Server Component payloads and removes outdated caches on activation.

    Read full notes →
  40. Excludes Cloudflare-specific configuration files from the service worker precache manifest to prevent caching conflicts.

    Read full notes →
  41. Adds a dedicated packaging step for the Cloudflare Workers build to prevent duplicate Next.js compilation runs.

    Read full notes →
  42. Adds a service worker and caching strategies to enable StashSync.app to function as a Progressive Web App, supporting installation and offline use.

    Read full notes →
  43. Improves button contrast with darker blue shades and updates the Note Editor tour description to accurately reflect the rich-text editor experience.

    Read full notes →
  44. Updates the Next.js build process to integrate Serwist for service worker generation, and removes duplicate build steps.

    Read full notes →
  45. Replaces SVG favicons with ICO format for broader browser and OS compatibility.

    Read full notes →
  46. Introduces interactive guided tours to help new users discover key features of the Dashboard and Note Editor.

    Read full notes →
  47. Introduces account deletion, enables WebSocket sync for Free-tier users, and adds automatic bookmark metadata fetching on the Dashboard.

    Read full notes →
  48. The first public release of StashSync.app, introducing core features and full-stack infrastructure.

    Read full notes →
  49. Internal pre-release test build of StashSync.app, used to validate the deployment pipeline before the first public launch.

    Read full notes →