一款win、linux、mac下使用的墨水屏管理软件,支持书籍阅读管理、设备管理等功能
See the code简体中文 · English
Kkindle is a quiet, cross-platform ebook and Kindle manager built with Avalonia. It combines a local library, reading, annotations, AI assistance, format conversion, and Kindle transfer in one desktop app.

My Clippings.txt.Download the latest Windows, Linux, or macOS package from the official site; it automatically selects the latest stable release.
Backup download: GitHub Releases.
Calibre is required separately for format conversion. macOS packages are available, but target-device validation is still in progress.
Choose S3 or WebDAV in Settings → Data & sync → Cloud sync, enter the connection details, and select Save settings. Both providers retain their own addresses and credentials. Manual, startup, exit, and scheduled sync use the saved selection.
For WebDAV, enter the URL of an existing directory, such as https://dav.example.com/dav/, and credentials if required. Some services require an app password. Kkindle creates a sync subdirectory named kkindle by default; change it in Advanced options. The connection test verifies read/write access and removes its test file. The server must support standard PROPFIND, MKCOL, GET, PUT, MOVE, and DELETE operations. Completed uploads are published with MOVE so interrupted transfers do not replace existing snapshots.
The sync subdirectory, encryption, scheduling, and transfer options are shared between providers. Devices syncing the same directory need the same encryption key; use a new subdirectory when changing keys. Connection profile exports include only the selected provider's credentials. Existing .kkindle-s3.json profiles remain supported; WebDAV profiles use .kkindle-webdav.json. Local backups exclude connection passwords and encryption keys.
Requires .NET SDK 10.0.400.
dotnet restore Kkindle.sln
dotnet build Kkindle.sln -p:Platform=x64
dotnet test Kkindle.sln --no-build -p:Platform=x64
# Run the slow regression suite explicitly before a release
dotnet test Kkindle.sln --no-build -p:Platform=x64 -p:RunSlowTests=true
dotnet run --project src\Kkindle.Desktop.Windows\Kkindle.Desktop.Windows.csproj -p:Platform=x64
The default test run skips expensive UI, rendering, and GC-stress cases while keeping core, platform, device, and a small UI smoke set. The skipped tests remain in the repository and can be enabled with RunSlowTests=true.
Linux also requires WebKitGTK and Secret Service. See cross-platform notes for Linux and macOS commands.
GPL-3.0 License. Third-party components and bundled fonts retain their own licenses.
一款win、linux、mac下使用的墨水屏管理软件,支持书籍阅读管理、设备管理等功能
See the code简体中文 · English
Kkindle is a quiet, cross-platform ebook and Kindle manager built with Avalonia. It combines a local library, reading, annotations, AI assistance, format conversion, and Kindle transfer in one desktop app.

My Clippings.txt.Download the latest Windows, Linux, or macOS package from the official site; it automatically selects the latest stable release.
Backup download: GitHub Releases.
Calibre is required separately for format conversion. macOS packages are available, but target-device validation is still in progress.
Choose S3 or WebDAV in Settings → Data & sync → Cloud sync, enter the connection details, and select Save settings. Both providers retain their own addresses and credentials. Manual, startup, exit, and scheduled sync use the saved selection.
For WebDAV, enter the URL of an existing directory, such as https://dav.example.com/dav/, and credentials if required. Some services require an app password. Kkindle creates a sync subdirectory named kkindle by default; change it in Advanced options. The connection test verifies read/write access and removes its test file. The server must support standard PROPFIND, MKCOL, GET, PUT, MOVE, and DELETE operations. Completed uploads are published with MOVE so interrupted transfers do not replace existing snapshots.
The sync subdirectory, encryption, scheduling, and transfer options are shared between providers. Devices syncing the same directory need the same encryption key; use a new subdirectory when changing keys. Connection profile exports include only the selected provider's credentials. Existing .kkindle-s3.json profiles remain supported; WebDAV profiles use .kkindle-webdav.json. Local backups exclude connection passwords and encryption keys.
Requires .NET SDK 10.0.400.
dotnet restore Kkindle.sln
dotnet build Kkindle.sln -p:Platform=x64
dotnet test Kkindle.sln --no-build -p:Platform=x64
# Run the slow regression suite explicitly before a release
dotnet test Kkindle.sln --no-build -p:Platform=x64 -p:RunSlowTests=true
dotnet run --project src\Kkindle.Desktop.Windows\Kkindle.Desktop.Windows.csproj -p:Platform=x64
The default test run skips expensive UI, rendering, and GC-stress cases while keeping core, platform, device, and a small UI smoke set. The skipped tests remain in the repository and can be enabled with RunSlowTests=true.
Linux also requires WebKitGTK and Secret Service. See cross-platform notes for Linux and macOS commands.
GPL-3.0 License. Third-party components and bundled fonts retain their own licenses.