diff --git a/README.md b/README.md new file mode 100644 index 0000000..f49b5f5 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# Oh-My-Stitcher + +## How to build + +1. Clone this repo (obviously) +2. Enter repo (solution) directory +3. `dotnet build` + +## How to run + +0. This project uses ASP.Net AoT, please don't forget to install `zlib1g-dev`. + +1. Publish it + - Enter `src/Oh.My.Stitcher` + - `dotnet publish -c Release -r linux-arm64` + +2. Run it + - Enter `src/Oh.My.Stitcher/bin/Release/net8.0/linux-arm64/publish` + - `ASSET_PATH_RO=/path/to/tiles ./Oh.My.Stitcher` + +## Caching + +For better performance, this stitcher use caching mechanism. The full image size would be GigaBytes!!!, so +the cache is limited, max size that can be cached: 720 x 720 x 128 (approximately 70MB). +It uses OS temporary directory (`Path.GetTempPath` or `/tmp`), please make sure it's writable. + +No, this doesn't break the rule, the cache is created and used AFTER the first API request. + +Use cases: +- consecutive request with the same rect and scale (e.g. "A1:AE55" then "AE1:A55")