AetherNet 3.3.1
dotnet add package AetherNet --version 3.3.1
NuGet\Install-Package AetherNet -Version 3.3.1
<PackageReference Include="AetherNet" Version="3.3.1" />
<PackageVersion Include="AetherNet" Version="3.3.1" />
<PackageReference Include="AetherNet" />
paket add AetherNet --version 3.3.1
#r "nuget: AetherNet, 3.3.1"
#:package AetherNet@3.3.1
#addin nuget:?package=AetherNet&version=3.3.1
#tool nuget:?package=AetherNet&version=3.3.1
AetherNet
A serverless mesh protocol for phones. Devices reach each other over the radios they already have — Bluetooth LE, Wi-Fi Direct, Wi-Fi Aware, NFC, LoRa, or the internet when there is one — with no towers, no accounts and nobody in the middle.
using AetherNet.Core;
using AetherNet.Messaging;
One reference brings the protocol: identity and addressing, sealed messaging, the transports and the radio ladder that chooses between them, storage, content, voice and streaming, and Aether Aware — which names the things around a phone and notices anything that keeps up with the person carrying it.
What is not in here
Two things are their own package, because each arrives with weight you should choose rather than inherit:
| Package | Why |
|---|---|
AetherNet.WebRtc |
brings SIPSorcery with it |
AetherNet.Sqlite |
brings a native SQLite per platform |
And AetherNet.Node is for talking to AetherNetService — the node that owns a device's identity and
radios — rather than embedding the protocol yourself.
Platforms
net9.0 and net10.0, with Android and Windows builds that add the platform's own radios. Aether Aware is
net10.0 and up.
MIT. Source at https://github.com/bhengubv/aether-protocol.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-android35.0 is compatible. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net9.0-windows10.0.19041 is compatible. net10.0 is compatible. net10.0-android was computed. net10.0-android36.0 is compatible. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. net10.0-windows10.0.19041 is compatible. |
-
net10.0
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.AspNetCore.Components.Web (>= 10.0.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- QRCoder (>= 1.6.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
-
net10.0-android36.0
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.AspNetCore.Components.Web (>= 10.0.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- QRCoder (>= 1.6.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
-
net10.0-windows10.0.19041
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.AspNetCore.Components.Web (>= 10.0.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- QRCoder (>= 1.6.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
-
net9.0
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
-
net9.0-android35.0
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
-
net9.0-windows10.0.19041
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- NSec.Cryptography (>= 25.4.0)
- SIPSorcery (>= 10.0.17)
- SQLitePCLRaw.bundle_e_sqlite3 (>= 3.0.5)
- System.IO.Ports (>= 9.0.0)
NuGet packages (23)
Showing the top 5 NuGet packages that depend on AetherNet:
| Package | Downloads |
|---|---|
|
AetherNet.Core
AetherNet.Core now ships inside AetherNet. This package points at it and carries no assemblies of its own; referencing either gives you the same code. |
|
|
AetherNet.Content
AetherNet.Content now ships inside AetherNet. This package points at it and carries no assemblies of its own; referencing either gives you the same code. |
|
|
AetherNet.Security
AetherNet.Security now ships inside AetherNet. This package points at it and carries no assemblies of its own; referencing either gives you the same code. |
|
|
AetherNet.Streaming
AetherNet.Streaming now ships inside AetherNet. This package points at it and carries no assemblies of its own; referencing either gives you the same code. |
|
|
AetherNet.Messaging
AetherNet.Messaging now ships inside AetherNet. This package points at it and carries no assemblies of its own; referencing either gives you the same code. |
GitHub repositories
This package is not used by any popular GitHub repositories.