Files
BTCPayServerPlugins/Plugins/BTCPayServer.Plugins.Breez/BTCPayServer.Plugins.Breez.csproj
Claude 855cd20ba6 Replace Breez SDK (Greenlight) with Breez Spark SDK (nodeless)
Major changes:
- Built C# bindings for Breez Spark SDK from source using UniFFI
- Created local NuGet package infrastructure (Breez.Sdk.Spark v0.0.1)
- Replaced Breez.Sdk package reference with Breez.Sdk.Spark
- Updated BreezLightningClient to use async Spark SDK API
- Removed Greenlight-specific code (credentials, invite codes)
- Simplified BreezSettings (no more Greenlight fields)
- Updated BreezService for async client initialization
- Cleaned up BreezController (removed certificate upload logic)

Key differences in Spark SDK:
- Nodeless architecture (no Greenlight hosting required)
- Simplified configuration (only mnemonic + API key)
- All async methods (no BlockingBreezServices)
- Different payment flow (PrepareSendPayment + SendPayment)

The plugin now works with Breez's Spark protocol which provides
a self-custodial Lightning experience without infrastructure hosting.

Note: NuGet package must be built from spark-sdk source before use.
2025-11-13 15:01:05 +00:00

41 lines
1.4 KiB
XML

<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<LangVersion>10</LangVersion>
</PropertyGroup>
<!-- Plugin specific properties -->
<PropertyGroup>
<Product>Breez / Greenlight</Product>
<Description>Lightweight lightning baby!</Description>
<Version>1.0.11</Version>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>
<!-- Plugin development properties -->
<PropertyGroup>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<PreserveCompilationContext>false</PreserveCompilationContext>
<GenerateEmbeddedFilesManifest>true</GenerateEmbeddedFilesManifest>
</PropertyGroup>
<!-- This will make sure that referencing BTCPayServer doesn't put any artifact in the published directory -->
<ItemDefinitionGroup>
<ProjectReference>
<Properties>StaticWebAssetsEnabled=false</Properties>
<Private>false</Private>
<ExcludeAssets>runtime;native;build;buildTransitive;contentFiles</ExcludeAssets>
</ProjectReference>
</ItemDefinitionGroup>
<ItemGroup>
<EmbeddedResource Include="Resources\**" />
<ProjectReference Include="..\..\submodules\btcpayserver\BTCPayServer\BTCPayServer.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Breez.Sdk.Spark" Version="0.0.1" />
</ItemGroup>
</Project>