# Yu-Core SwashbucklerDiary: A Local-First Blazor Diary for Multiple Platforms

> SwashbucklerDiary is an open source diary application built with Blazor and .NET MAUI for Android, Windows, macOS, Linux, and the Web. Its strongest feature is local data storage, while WebDAV backup and local-network synchronization add optional transfer paths.

**Yu-Core/SwashbucklerDiary** — 侠客日记是一个开源、跨平台的本地日记app，使用Blazor开发，支持Android，Windows，macOS，Web，Linux。"SwashbucklerDiary" is an open source cross-platform local diary app using Blazor , support Android，Windows，macOS，Web，Linux.

- Repository: https://github.com/Yu-Core/SwashbucklerDiary
- Stars: 1,618 · Forks: 152
- Language: C#
- License: AGPL-3.0
- Published: 2026-10-16 · Updated: 2026-10-16 · Language: en
- Canonical page: https://hysenlabs.com/projects/yu-core-swashbucklerdiary

## A Local-First Diary Across Desktop, Mobile, and Web

Yu-Core/SwashbucklerDiary addresses personal journaling rather than team knowledge management or social publishing. The project presents itself as a local diary application for recording daily life entries, with platforms listed for Android, Windows, macOS, Web, and Linux. That platform range is unusual for a small diary project because it combines several .NET hosting models instead of targeting only desktop software or a browser. The README names Blazor Hybrid, Blazor Server, Blazor WebAssembly, .NET MAUI, Masa Blazor, SqlSugar, Serilog, Gir.Core, and Vditor as the main technologies. The intended users are people who want a personal writing tool that can run on different device categories and keep diary data on the device itself. The README explicitly states that all data is stored locally and does not require an internet connection. Privacy mode, tags, weather, mood, and location fields support the diary use case, but the documentation does not explain how those metadata fields are captured on each platform.

## Why SwashbucklerDiary Is More Than a Markdown Editor

The central content mechanism is Markdown with immediate rendering. Vditor is listed in the technology stack, so the repository documentation associates the diary editor with a browser-oriented Markdown editor rather than a plain text storage model. The feature list also names images, audio, and video, along with mathematical formulas, mind maps, charts, flowcharts, Gantt charts, sequence diagrams, and staff notation. The README does not specify which file formats are accepted for each media type, whether attachments are embedded in the database, or how large files are handled. It does say that entries can be exported in several formats, but the available formats and export behavior are not documented in the README. This distinction matters for adoption. Someone who only needs plain notes may find the feature set excessive, while a diary user who wants expressive entries will find the rendering support relevant. The interface is described as minimalist and responsive across different sizes, with dark mode and multiple languages available.

## How the Platform Architecture and Storage Model Fit Together

The repository layout supports the platform claims. The top level contains separate solution files for GTK, MAUI, Server, and WebAssembly, including `SwashbucklerDiary.Gtk.slnx`, `SwashbucklerDiary.Maui.slnx`, `SwashbucklerDiary.Server.slnx`, and `SwashbucklerDiary.WebAssembly.slnx`. That structure indicates separate project paths for the Linux-oriented GTK work, MAUI applications, server-hosted use, and WebAssembly deployment, although the README does not document which specific binaries correspond to each supported operating system. SqlSugar is listed as the data-access technology, while Serilog is named for logging. The documentation does not reveal the database engine, schema, migration policy, or whether the Web version uses the same local storage mechanism as the installed applications. It also does not explain how WebDAV backup is authenticated or how local-network synchronization discovers another device. Consequently, the confirmed architecture is a multi-target Blazor application with local storage and optional synchronization features, not a fully specified cloud sync protocol. The GitHub Pages demonstration gives users a way to preview the Web deployment, but it should not be treated as evidence that hosted diary data remains on the user's device without further documentation.

## Installing SwashbucklerDiary and Trying the First Entry

The README does not provide `git clone`, package-manager, Docker, or dotnet build commands. For that reason, there is no documented command sequence that can be reproduced safely here. The project's stated installation path is to use the download guide, GitHub Releases, or one of the listed distribution channels. The README also links an online demonstration hosted through GitHub Pages. A practical first-use tutorial therefore begins with choosing the client that matches the reader's platform, installing or downloading the package from one of those documented sources, and launching the application. The README does not describe the exact menu sequence for creating a diary, entering text, saving an entry, or enabling privacy mode, so those steps cannot be presented as confirmed commands or UI instructions. After opening the app, the reader should verify that the interface is available at the expected window or screen size and that a new entry can be written in Markdown. The documented content path is then immediate Markdown rendering. The reader should also check the local data behavior before adding sensitive material. For Web users, the GitHub Pages preview is the documented route to the browser deployment. For developers, the README identifies Visual Studio 2026, Visual Studio Code, the .NET 10 SDK, and platform-specific optional dependencies, but it stops short of giving a repository build command.

## Backups, Synchronization, and Platform Boundaries

SwashbucklerDiary offers two concrete data-transfer mechanisms in its feature list: WebDAV backup and synchronization transfer within the same local network. These features matter because local-first storage does not by itself solve device loss, reinstall recovery, or moving a diary between machines. However, the README does not document WebDAV server requirements, credential storage, conflict handling, transfer encryption, supported WebDAV implementations, or whether local-network synchronization requires a specific discovery protocol. The absence of those details is a genuine adoption constraint. A reader should not assume that the Web version, a WebDAV backup, and LAN synchronization all produce identical data formats or revision histories. The listed platform requirements are also uneven. Windows 11 and Windows 10 version 1809 or later are supported. Android requires Android 8.0, API 26, or later. macOS requires version 12 or later. iOS is crossed out in the README, with a note that a virtual machine may run it but a physical device has not been tested. That makes iOS an unsuitable adoption target based on the project's own documentation. Linux is listed as supported, while the development environment calls `libwebkitgtk-6.0-4` optional for Linux development.

## Maintenance, AGPL-3.0, and the Cost of Adoption

The repository is not archived, and the last push was on 2026-10-17. The listed releases include v1.31.5 dated 2025-12-10, v1.26.6 dated 2025-09-06, and v1.25.9 dated 2025-09-03. Those dates indicate published releases, but they do not establish how frequently every platform receives fixes. The project uses the AGPL-3.0 license. That matters to teams considering modifications, redistribution, or network deployment because the license has obligations that should be reviewed against the intended distribution model. This article does not interpret the license or provide legal advice. Maintenance and upgrade work also depends on the.NET 10 and MAUI toolchain identified by the README. A developer adopting the repository should expect to account for platform-specific development dependencies such as OpenJDK 17 for Android, Xcode for macOS, and the Linux WebKitGTK package. The README does not document an upgrade path, database migration procedure, backup compatibility policy, or rollback process, so those items require verification before changing an established diary installation.

## A More Expressive Alternative to a Basic Diary App

A useful comparison is with a plain local Markdown notebook or a simple text diary that stores only entries and dates. SwashbucklerDiary adds rendered Markdown, media support, diagrams, multilingual interfaces, tags, metadata such as mood and weather, multiple output formats, WebDAV backup, and LAN synchronization. A basic notebook is generally easier to inspect, edit outside the application, and move between systems because it relies on files rather than application-specific features. SwashbucklerDiary is more appropriate when the diary itself needs a formatted reading experience and when the user wants the application to manage attachments and presentation. The trade-off is dependence on undocumented implementation details. The README does not state whether a Markdown entry remains portable as a normal `.md` file, whether attachments can be exported independently, or whether synchronization is designed for conflict-free use by one person. The project therefore offers a richer diary interface, but the source documentation is too thin to treat it as a transparent interchange format.

## Conclusion

SwashbucklerDiary fits writers who want a private diary with Markdown, media, multilingual support, and desktop or mobile clients. It is less suitable for people who require documented cloud collaboration, a public product website, or a clear command-line installation path. Check the platform requirements and download guide first, then confirm that WebDAV or LAN synchronization matches the intended backup workflow before adopting it.

## FAQ

### Does SwashbucklerDiary require an internet connection?

No. The README states that all data is stored locally and that the application does not require an internet connection. WebDAV backup and same-LAN synchronization are separate optional features, but their detailed behavior is not documented.

### Which platforms does SwashbucklerDiary support?

The README lists Android, Windows, macOS, Web, and Linux. It specifies Windows 10 version 1809 or later, Android 8.0 or later, and macOS 12 or later. iOS is marked as untested on physical devices.

### Can SwashbucklerDiary back up diary data with WebDAV?

The feature list explicitly includes WebDAV backup. The README does not document WebDAV server requirements, authentication, encryption, conflict handling, or backup format compatibility, so those details must be checked before relying on it.

### How do I install SwashbucklerDiary?

The README points users to the download guide, GitHub Releases, and several app distribution channels. It does not provide `git clone`, `dotnet`, package-manager, or Docker commands, so the documented installation method is to obtain a build through those channels.

## Sources

- [Issues](https://github.com/Yu-Core/SwashbucklerDiary/issues)
- [License: AGPL-3.0](https://github.com/Yu-Core/SwashbucklerDiary/blob/master/LICENSE)
- [README](https://github.com/Yu-Core/SwashbucklerDiary/blob/master/README.md)
- [Releases](https://github.com/Yu-Core/SwashbucklerDiary/releases)
- [Yu-Core/SwashbucklerDiary on GitHub](https://github.com/Yu-Core/SwashbucklerDiary)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/yu-core-swashbucklerdiary
