NextGenSoftware.OASIS.API.Providers.BaseOASIS 2.0.0

dotnet add package NextGenSoftware.OASIS.API.Providers.BaseOASIS --version 2.0.0
                    
NuGet\Install-Package NextGenSoftware.OASIS.API.Providers.BaseOASIS -Version 2.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NextGenSoftware.OASIS.API.Providers.BaseOASIS" Version="2.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NextGenSoftware.OASIS.API.Providers.BaseOASIS" Version="2.0.0" />
                    
Directory.Packages.props
<PackageReference Include="NextGenSoftware.OASIS.API.Providers.BaseOASIS" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NextGenSoftware.OASIS.API.Providers.BaseOASIS --version 2.0.0
                    
#r "nuget: NextGenSoftware.OASIS.API.Providers.BaseOASIS, 2.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package NextGenSoftware.OASIS.API.Providers.BaseOASIS@2.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NextGenSoftware.OASIS.API.Providers.BaseOASIS&version=2.0.0
                    
Install as a Cake Addin
#tool nuget:?package=NextGenSoftware.OASIS.API.Providers.BaseOASIS&version=2.0.0
                    
Install as a Cake Tool

Base OASIS Provider

Overview

The Base OASIS Provider enables seamless integration between the OASIS ecosystem and Base, Coinbase's Layer 2 network built on Optimism. This provider implements the full OASIS storage and blockchain interfaces, allowing avatars, holons, and NFTs to be stored and managed on Base's secure, low-cost, and developer-friendly blockchain.

Features

Full OASIS Integration

  • Avatar management (create, read, update, delete)
  • Avatar detail storage
  • Holon (data object) storage
  • NFT minting and transfers
  • Transaction management

Base Network Support

  • Optimistic rollup technology
  • Ethereum security
  • Low gas fees
  • Fast transactions

🔐 Security Features

  • Wallet integration via WalletManager
  • Private key management
  • Transaction signing and verification
  • Backed by Coinbase

Installation

Add the Base OASIS Provider to your project:

dotnet add package NextGenSoftware.OASIS.API.Providers.BaseOASIS

Configuration

Initialize Provider

using NextGenSoftware.OASIS.API.Providers.BaseOASIS;

// Base Mainnet
var baseProvider = new BaseOASIS(
    hostUri: "https://mainnet.base.org",
    chainPrivateKey: "YOUR_PRIVATE_KEY",
    chainId: 8453,
    contractAddress: "YOUR_CONTRACT_ADDRESS"
);

// Base Sepolia Testnet
var baseProviderTestnet = new BaseOASIS(
    hostUri: "https://sepolia.base.org",
    chainPrivateKey: "YOUR_PRIVATE_KEY",
    chainId: 84532,
    contractAddress: "YOUR_CONTRACT_ADDRESS"
);

await baseProvider.ActivateProviderAsync();

Network Details

Mainnet

Sepolia Testnet

Usage Examples

Save Avatar

var avatar = new Avatar
{
    Id = Guid.NewGuid(),
    Username = "base_user",
    Email = "user@example.com"
};

var result = await baseProvider.SaveAvatarAsync(avatar);
if (!result.IsError)
{
    Console.WriteLine($"Avatar saved on Base: {result.Result.Id}");
}

Load Avatar

var result = await baseProvider.LoadAvatarAsync(avatarId);
if (!result.IsError)
{
    Console.WriteLine($"Loaded: {result.Result.Username}");
}

Mint NFT

var mintRequest = new MintNFTTransactionRequest
{
    MintWalletAddress = "0x...",
    JSONMetaDataURL = "ipfs://...",
    MemoText = "My OASIS NFT on Base"
};

var result = await baseProvider.MintNFTAsync(mintRequest);
if (!result.IsError)
{
    Console.WriteLine($"NFT Minted on Base: {result.Result.TransactionResult}");
}

Send Transaction

var txRequest = new WalletTransactionRequest
{
    ToWalletAddress = "0x...",
    Amount = 0.01m // 0.01 ETH
};

var result = await baseProvider.SendTransactionAsync(txRequest);

Smart Contract ABI

The provider uses a standard OASIS smart contract with the following functions:

  • CreateAvatar(uint256, string, string)
  • CreateAvatarDetail(uint256, string, string)
  • CreateHolon(uint256, string, string)
  • GetAvatarById(uint256)
  • GetHolonById(uint256)
  • mint(address, string) - NFT minting
  • sendNFT(...) - NFT transfers

Performance

  • Transaction Speed: 2 seconds
  • Cost: ~10-100x cheaper than Ethereum L1
  • Finality: 1-2 seconds (soft), ~1 week (hard on Ethereum)
  • Throughput: Scales with Ethereum

Advantages

🚀 Developer Friendly

  • EVM compatible
  • Easy migration from Ethereum
  • Comprehensive tooling
  • Coinbase support

💰 Cost Effective

  • Ultra-low gas fees
  • Predictable costs
  • Ethereum security

🔗 Ecosystem

  • Coinbase integration
  • Growing DeFi ecosystem
  • NFT marketplaces
  • Cross-chain bridges

Why Base?

  • Backed by Coinbase: Enterprise-grade reliability
  • Optimistic Rollup: Ethereum security with L2 speed
  • Low Fees: Affordable for all users
  • Developer Tools: Full Ethereum tooling support
  • Onboarding: Easy fiat on-ramps via Coinbase

License

MIT License - Copyright © NextGen Software Ltd 2025

Support

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on NextGenSoftware.OASIS.API.Providers.BaseOASIS:

Package Downloads
NextGenSoftware.OASIS.OASISBootLoader

Responsible for Booting The OASIS & managing the various OASIS Providers. Used by various OASIS Packages such as OASIS.API.Integrated.Native.EndPoint, STAR & others.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.0 169 7/12/2026

- OASIS Omniverse Reboot and Rebrand: major ecosystem relaunch under oasisomniverse.one.
- Full implementation of all remaining provider interface stubs — no more NotImplementedExceptions.
- Security hardening: NuGet vulnerability remediation, CORS and JWT alignment.
- Improved error handling: explicit errors when provider returns null content; null guards throughout.
- Updated to align with OASIS API Core v2.0.0.
- Upgraded to .NET 10 — latest runtime with significant performance and GC improvements.
- Miscellaneous bug fixes and stability improvements.
- Improved null safety and error reporting.
- Internal refactoring to align with OASIS API Core v2.0.0 conventions.
- Many misc improvements.
- Multiple bug fixes.