PupaLib.Data 0.1.1

dotnet add package PupaLib.Data --version 0.1.1
                    
NuGet\Install-Package PupaLib.Data -Version 0.1.1
                    
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="PupaLib.Data" Version="0.1.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PupaLib.Data" Version="0.1.1" />
                    
Directory.Packages.props
<PackageReference Include="PupaLib.Data" />
                    
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 PupaLib.Data --version 0.1.1
                    
#r "nuget: PupaLib.Data, 0.1.1"
                    
#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 PupaLib.Data@0.1.1
                    
#: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=PupaLib.Data&version=0.1.1
                    
Install as a Cake Addin
#tool nuget:?package=PupaLib.Data&version=0.1.1
                    
Install as a Cake Tool

<div align="center">

๐Ÿ—ƒ๏ธ PupaLib.Data

PupaLib.Data License Dotnet Nuget Github License C#

NuGet .NET

PupaLib.Data is a lightweight recursive key-value storage with path-based access. ๐ŸŽฏ

<img src="https://github.com/Artpupser/PupaLib.Data/blob/main/assets/banner.jpg" style="border-radius: 20px; max-height: 500px">

</div>


๐Ÿ“Ž Navigation

โœจ๏ธ Features

<div align="center">

| ๐Ÿ† Feature | ๐Ÿ“ Description | | ----------------------- | ---------------------------------------------------------- | | Recursive Structure | Tree-like data storage with nested nodes (Childs) | | Path-based Access | Access data via dot-separated paths (player.stats.hp) | | Thread-safe | Built on ConcurrentDictionary | | Deep Operations | DeepSet, DeepGet, DeepExists* for nested access | | Auto Node Creation | Nodes are created automatically during deep set operations | | Type Safety Checks | Validate types with ExistsWithType<T> | | Debug Visualization | Built-in ToString() for readable tree output | </div>

๐Ÿš€ Installation

You can install the package through the NuGet Package Manager or via the command line

dotnet add package PupaLib.Data

Or through the NuGet Package Manager

Install-Package PupaLib.Data

๐Ÿงต Usage

๐Ÿ“Œ Create instance

var data = new RecursionData();

๐Ÿ“Œ Set values

// Simple set
data.Set("score", 100);

// Deep set (auto-creates structure)
data.DeepSet("player.stats.hp", 250);
data.DeepSet("player.stats.mana", 75);

๐Ÿ“Œ Get values

int score = data.Get<int>("score");

int hp = data.DeepGet<int>("player.stats.hp");

๐Ÿ“Œ Check existence

bool exists = data.ExistsAny("score");

bool deepExists = data.DeepExistsAny("player.stats.hp");

bool typed = data.ExistsWithType<int>("score");

bool deepTyped = data.DeepExistsWithType<int>("player.stats.hp");

๐Ÿ“Œ Debug output

Console.WriteLine(data);

Example output:

[score] -> 100
    /player
        /stats
            [hp] -> 250
            [mana] -> 75

๐Ÿ“Œ Path separator

RecursionData.SeparateSymbol = '.';

Default separator is .


๐Ÿ“ฆ Dependencies

None

๐Ÿ—ƒ๏ธ Devlog

0.1.0

  • Initial implementation of RecursionData
  • Path-based access using . separator
  • Thread-safe storage via ConcurrentDictionary
  • Core API: Set, Get, Exists, Deep*

โš–๏ธ License

This project is licensed under the MIT License.

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.
  • net10.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.1 76 9/19/2026
0.1.0 86 9/13/2026