- Added a manual "Save" button to the editor, enabled only when there are unsaved changes.
- Enhanced save status feedback with new states ("Modified", "Saving...", "Saved", "Error", "Timeout") and distinct styling.
- Improved auto-save: increased debounce to 2s, only show "Saving..." when actually saving, and unified manual/auto save logic.
- SaveContent now uses a 30s timeout and retries on error/timeout.
- SessionService now streams large content to disk in chunks and ensures the save directory exists.
- Updated CSS for save button and status indicators, including mobile tweaks.
- Removed unused exception variables in SharedEditor.razor and SharedPreview.razor.
- Updated markdown spec file to reflect new methods and build errors.
Implement a new theme system with a ThemeToggle component, allowing users to switch between light, dark, and auto (system) modes. Move theme CSS variables to app.css and manage theme state via theme.js with localStorage persistence. Integrate ThemeToggle into editor and preview top bars. Clean up old theme logic from MainLayout.razor.css for better separation and maintainability.
Introduced SharedEditor.razor and SharedPreview.razor for editing and viewing shared documents via tokenized links. Includes auto-save, markdown preview, permission checks, and dedicated responsive styles for both editable and view-only modes. Enables secure sharing of documents with user-friendly interfaces.
Added MigrationBackup/ to .gitignore to prevent tracking of backup files and subdirectories within this folder. This helps keep the repository clean from backup-related artifacts.
- Remove Blazor template pages and navigation; redesign layout for fullscreen editor with light/dark theme support
- Add Editor.razor: markdown editor with live preview, auto-save, and share modal for readonly/editable links
- Implement MarkdownService (Markdig + HtmlSanitizer), SessionService (cookie-based, file persistence), and ShareService (token-based sharing)
- Configure DI and cookie policy in Program.cs; add Markdig and HtmlSanitizer NuGet packages
- Include example session and share token data files
- App is now a single-page markdown editor with file-based storage and sharing, no database