https://github.com/b67687/imageglass-ithmb-plugin
C ABI plugin for ImageGlass v10 to decode .ithmb thumbnail files using ithmb-core
https://github.com/b67687/imageglass-ithmb-plugin
cdylib codec image-decoding imageglass ithmb plugin rust thumbnail
Last synced: 5 days ago
JSON representation
C ABI plugin for ImageGlass v10 to decode .ithmb thumbnail files using ithmb-core
- Host: GitHub
- URL: https://github.com/b67687/imageglass-ithmb-plugin
- Owner: B67687
- License: mit
- Created: 2026-07-07T08:15:13.000Z (10 days ago)
- Default Branch: main
- Last Pushed: 2026-07-07T09:13:07.000Z (10 days ago)
- Last Synced: 2026-07-07T10:16:09.876Z (10 days ago)
- Topics: cdylib, codec, image-decoding, imageglass, ithmb, plugin, rust, thumbnail
- Language: Rust
- Size: 15.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Imageglass-Ithmb-Plugin
C ABI plugin for [ImageGlass](https://imageglass.org) v10 to decode `.ithmb` thumbnail files using [ithmb-core](https://crates.io/crates/ithmb-core) from the parent repo [Ithmb-Codec](https://github.com/B67687/Ithmb-Codec)
## Build & Package
```bash
# Build the cdylib
cargo build --release
# Package as .igplugin.zip (auto-detects host platform)
./scripts/package.sh
# Or specify a target:
# ./scripts/package.sh linux
# ./scripts/package.sh macos
# ./scripts/package.sh windows
```
Output: `dist/ithmb-codec-.igplugin.zip` (binary + manifest).
## ImageGlass Integration (v10+)
1. Build and package: `./scripts/package.sh`
2. Open ImageGlass v10 -> **Settings -> Plugins -> Add**
3. Select the `.igplugin.zip` file from `dist/`
4. ImageGlass installs and registers the codec automatically
`.ithmb` and `.ipm` files now open natively in ImageGlass.
## Files
| Path | Purpose |
|------|---------|
| `src/` | Rust cdylib (721 lines, ImageGlass native plugin ABI) |
| `igplugin.json` | Plugin manifest (id, name, executable, kind) |
| `scripts/package.sh` | Build + package into `.igplugin.zip` |
| `.github/workflows/ci.yml` | CI: build + clippy + deny + package artifacts |
## FFI from Other Languages
The library exposes a single C entry point:
```c
const IGPluginApi* ig_plugin_get_api(i32 abi_version);
```
See the [ImageGlass plugin SDK](https://github.com/ImageGlass/SDK) for details.
## License
MIT