ImageCaching.Nuke
5.1.0
dotnet add package ImageCaching.Nuke --version 5.1.0
NuGet\Install-Package ImageCaching.Nuke -Version 5.1.0
<PackageReference Include="ImageCaching.Nuke" Version="5.1.0" />
<PackageVersion Include="ImageCaching.Nuke" Version="5.1.0" />
<PackageReference Include="ImageCaching.Nuke" />
paket add ImageCaching.Nuke --version 5.1.0
#r "nuget: ImageCaching.Nuke, 5.1.0"
#:package ImageCaching.Nuke@5.1.0
#addin nuget:?package=ImageCaching.Nuke&version=5.1.0
#tool nuget:?package=ImageCaching.Nuke&version=5.1.0
NukeProxy
This is a small Xamarin.iOS binding Proxy for Nuke. Since Nuke is a Swift library, which doesn't expose its code with @objc annotations, we cannot bind it directly and need a proxy for this.
This proxy provides enough API for Xamarin.Forms.Nuke to function. If you need more of Nukes API to be surfaced, PRs are welcome.
Installation
ImageCaching.Nuke supports .NET 9 and .NET 10 for ios and maccatalyst targets on ARM64, with a minimum iOS/Mac Catalyst version of 15.0.
.NET 9 / .NET 10 iOS and Mac Catalyst
Nuget:
Install-Package ImageCaching.Nuke
MAUI UI framework
NuGet:
Install-Package https://www.nuget.org/packages/Sharpnado.Maui.Nuke
Building locally
Install Xcode 27.1 and select it as your active developer directory. Xcode resolves the Nuke dependency through Swift Package Manager automatically.
Install .NET 10.0.403 SDK and ios and maccatalyst workloads:
dotnet workload install ios maccatalyst
Restore .NET tools:
``sh dotnet tool restore
Run the build script to generate xcframeworks and to update ApiDefinitions
```sh
bash build.sh
This creates Output/NukeProxy.xcframework with ARM64-only slices for iOS devices, iOS Simulator, and Mac Catalyst, targeting iOS/Mac Catalyst 15.0 or later.
To build the XCFramework without regenerating the binding definitions, run bash build.sh --skip-sharpie. CI uses this option to preserve the checked-in definitions.
Intel (
x86_64) Macs and simulators are no longer supported. The script verifies that each generated framework contains only ARM64.
CI uses the same script on the xcode-27 runner and explicitly selects Xcode 27.1. Xcode upgrades require changing the pinned XCODE_VERSION in .github/workflows/build.yml.
Exposing more API
Open the NukeProxy.xcodeproj in Xcode and add more code to NukeProxy.swift.
Make sure to annotate correctly with @objc. Refer to the other code and Xamarin.iOS Swift Bindings. When done adding more code, ensure project builds:
- Run
bash build.shfrom the command line to rebuild the ARM64 XCFramework - Adjust the definitions and ensure the project builds
- Create a PR to this repository
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0-ios18.0 is compatible. net9.0-maccatalyst18.0 is compatible. net10.0-ios was computed. net10.0-ios26.0 is compatible. net10.0-maccatalyst was computed. net10.0-maccatalyst26.0 is compatible. |
-
net10.0-ios26.0
- No dependencies.
-
net10.0-maccatalyst26.0
- No dependencies.
-
net9.0-ios18.0
- No dependencies.
-
net9.0-maccatalyst18.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on ImageCaching.Nuke:
| Package | Downloads |
|---|---|
|
Sharpnado.Maui.Nuke
Nuke 12 for Maui. Since MAUI, the Android platform get a native caching library: Glide. Unfortunately on, iOS, there is no native caching... Sharpnado.Maui.Nuke is here to repair this injustice by implementing image caching with the fastest and most popular ios native caching library: Nuke. |
GitHub repositories
This package is not used by any popular GitHub repositories.