Development Notes

Development Notes

These are some notes that I have taken while developing the Kavita Import Tool. They are mostly for my reference, but may be useful if you are looking to contribute to the project.

App is currently on Tauri v1. v2's docs are still incomplete so holding off on that.

Kavita's Supported files

Link: Disucssion link (opens in a new tab)

Contents (from here (opens in a new tab)):

public const string ImageFileExtensions = @"^(\.png|\.jpeg|\.jpg|\.webp|\.gif|\.avif)"; 
    public const string ArchiveFileExtensions = @"\.cbz|\.zip|\.rar|\.cbr|\.tar.gz|\.7zip|\.7z|\.cb7|\.cbt";
    public const string EpubFileExtension = @"\.epub";
    public const string PdfFileExtension = @"\.pdf";

Update Server

Using mackenly/tauri-update-cloudflare (opens in a new tab) hosted by TMG

Checks: https://updates.kavitaimporttool.mackenly.com/v1/{{target}}/{{arch}}/{{current_version}} (opens in a new tab)

Even if the URL is changed, this one should be kept or redirected so that old versions can still check for updates.

Version updates

Version updates and deployments happen automatically on main. To control the synmantic versioning, there's special keywords that can be used in the commit messages:

patch-wording: 'bump-patch,fixes,Fixes,bugfix,Bugfix,patch,hotfix,Hotfix'
minor-wording: 'bump-minor,adds,Adds,new'
major-wording: 'bump-major,MAJOR,removes,Removes,delete,Delete'