robbiblubber.org
DE
Projekte
Suite.NETMIT

Spellbook.NET.

Robbiblubber.Spellbook.NET

Ein paar gute Bausteine für deinen Code: Konfiguration und Datenformate, Encoding und Verschlüsselung, WinForms-Oberflächen und Windows-Integration. Vier Bibliotheken, die wiederkehrende Aufgaben übernehmen und Platz für eigene Ideen lassen.

.NET 8.NET 10

Bibliotheken & Erweiterungen

4

Die Bibliotheken sind als einzelne NuGet-Pakete verfügbar. Installiere die Bausteine, die dein Projekt braucht.

Bibliothek

Robbiblubber.Spellbook

Die Basis für vieles, was im Entwicklungsalltag immer wieder gebraucht wird: ddn-Konfiguration, Encoding, Hashing, Verschlüsselung und Hilfsklassen für Dateien, Strings, Plug-ins und Anwendungsinstanzen.

Plattformunabhängiger CodeZielframeworks: net8.0 / net10.0

Das steckt drin

  • ddn (Diabolic Data Notation): hierarchische Konfiguration, typisierte Werte und Objektserialisierung.
  • Base62, Base64, Hex und GZip mit gemeinsamen Encoder-Schnittstellen.
  • Hashing, PBKDF2, Argon2 und AES-GCM.
  • Datei- und Pfadoperationen, String-Helfer, Plug-in-Laden und Single-Instance-Unterstützung.
Ein kleiner Einstieg C#
using Robbiblubber.Spellbook;

DdnElement settings = Ddn.Create();
settings["window/size"] = new[] { 1024, 768 };
settings["theme"] = "dark";
settings.Save("settings.ddn");

int[] size = settings["window/size"];

Einstellungen schreiben und typisiert lesen. Fehlende Abschnitte entstehen beim Schreiben.

Installation
dotnet add package Robbiblubber.Spellbook
Bibliothek

Robbiblubber.Spellbook.Backpack

Dateien können mehr mitnehmen. Backpack hängt einen Payload an eine Trägerdatei an und liest ihn später wieder aus – etwa Ressourcen oder ein Datenarchiv an einer ausführbaren Datei.

Plattformunabhängiger CodeZielframeworks: net8.0 / net10.0

Das steckt drin

  • Dateien, Streams oder Byte-Arrays als Payload anhängen; ein Payload pro Trägerdatei.
  • Optionales Tag zur Zuordnung; SHA-256-Prüfung zum Erkennen beschädigter Nutzdaten.
  • Payload extrahieren oder direkt als Stream lesen; auch aus der laufenden Anwendung.
Ein kleiner Einstieg C#
using System.IO;
using Robbiblubber.Spellbook.Backpack;

Packer.Append("app.exe", "data.zip", "app-data");

using Stream payload =
    Packer.OpenPayload("app.exe", "app-data");

Die vorhandenen Dateien app.exe und data.zip zusammenpacken und den Payload ohne temporäre Datei öffnen.

Installation
dotnet add package Robbiblubber.Spellbook.Backpack
Bibliothek

Robbiblubber.Spellbook.Controls

Mehr Möglichkeiten für WinForms: Bestehende Controls erhalten zusätzliche Funktionen, eigene Steuerelemente bringen Themes und nützliche Details mit. Vieles lässt sich direkt im Designer einbinden. Mit Sampleprojekten im Repository.

Windows / WinFormsZielframeworks: net8.0-windows / net10.0-windows

Das steckt drin

  • Themes zur Laufzeit: System, Auto, Light, Dark und eigene Farbpaletten mit Theme-Editor.
  • Autovervollständigung mit Fuzzy-Suche und Signaturhilfe.
  • Editierbefehle für Menüs und Toolbars, gespeicherte Fensterlayouts und Recent-Listen mit Pinning.
  • Themed Controls und Dialoge, etwa ComboBox, TextBox, Buttons und Farbauswahl; High-DPI-Unterstützung.
Ein kleiner Einstieg C#
using System.Drawing;
using Robbiblubber.Spellbook.Controls.Themes;

Theme theme = new("Midnight", Theme.DARK);
theme.SetValue(ThemeColor.ACCENT, Color.CornflowerBlue);
ThemeManager.Add(theme);
ThemeManager.Theme = theme;

Ein eigenes Theme registrieren. Vor dem ersten Fenster setzen; ein ThemeProvider am Formular überträgt es auf die Controls.

Installation
dotnet add package Robbiblubber.Spellbook.Controls
Bibliothek

Robbiblubber.Spellbook.Windows

Die Verbindung zum Windows-Desktop: Verknüpfungen erstellen und auslesen, Dateitypen und Anwendungen registrieren sowie INI-Dateien bearbeiten.

WindowsZielframeworks: net8.0-windows / net10.0-windows

Das steckt drin

  • Verknüpfungen mit Argumenten, Arbeitsverzeichnis, Icon und Fensterdarstellung.
  • Dateizuordnungen, „Öffnen mit“ und Einträge in der Liste installierter Anwendungen.
  • INI-Dateien typisiert lesen und schreiben; Kommentare und Formatierung unveränderter Zeilen bleiben erhalten.
Ein kleiner Einstieg C#
using Robbiblubber.Spellbook.Windows;

IniFile settings = new("settings.ini");
int width = settings.GetInt32("window", "width", 800);
settings.SetValue("window", "width", 1024);

Einen Wert mit Standardwert lesen und eine Änderung direkt speichern.

Installation
dotnet add package Robbiblubber.Spellbook.Windows

Die .NET-Bibliotheken werden über NuGet verteilt. Tools und Bibliotheken bleiben ihren Suites und Collections zugeordnet.

Alle Projekte ansehen