Packages
rbt_weave
0.2.65
0.2.67
0.2.66
0.2.65
0.2.64
0.2.63
0.2.62
0.2.61
0.2.60
0.2.59
0.2.58
0.2.57
0.2.56
0.2.55
0.2.54
0.2.53
0.2.52
0.2.51
0.2.50
0.2.49
0.2.48
0.2.47
0.2.46
0.2.45
0.2.44
0.2.43
0.2.42
0.2.41
0.2.40
0.2.39
0.2.38
0.2.37
0.2.36
0.2.35
0.2.34
0.2.33
0.2.32
0.2.31
0.2.30
0.2.29
0.2.28
0.2.27
0.2.26
0.2.25
0.2.24
0.2.23
0.2.22
0.2.21
0.2.20
0.2.19
0.2.18
0.2.17
0.2.16
0.2.15
0.2.14
0.2.13
0.2.12
0.2.11
0.2.10
0.2.9
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.0
Graph conflict detection and image processing NIFs for OSINT knowledge graphs, powered by Rust.
Current section
Files
Jump to
Current section
Files
lib/weave/image.ex
defmodule Weave.Image do
@moduledoc """
Thumbnail processing powered by Rust.
Downloads images, resizes to 256x256 WebP thumbnails, and computes
deterministic storage keys based on source URL SHA-256.
"""
@doc """
Computes the thumbnail storage key from a source URL.
Returns `"thumbnails/{sha256_hex[0..32]}.webp"`.
## Examples
iex> Weave.Image.thumbnail_key("https://example.com/photo.jpg")
"thumbnails/" <> _rest = Weave.Image.thumbnail_key("https://example.com/photo.jpg")
"""
defdelegate thumbnail_key(source_url), to: Weave.Native
@doc """
Downloads an image, resizes to 256x256 WebP, and computes the storage key.
Returns `{:ok, {key, webp_bytes}}` or `{:error, reason}`.
"""
defdelegate process_thumbnail(url), to: Weave.Native
end