![]() |
VOOZH | about |
dotnet add package BAUERGROUP.Shared.Desktop --version 3.0.8
NuGet\Install-Package BAUERGROUP.Shared.Desktop -Version 3.0.8
<PackageReference Include="BAUERGROUP.Shared.Desktop" Version="3.0.8" />
<PackageVersion Include="BAUERGROUP.Shared.Desktop" Version="3.0.8" />Directory.Packages.props
<PackageReference Include="BAUERGROUP.Shared.Desktop" />Project file
paket add BAUERGROUP.Shared.Desktop --version 3.0.8
#r "nuget: BAUERGROUP.Shared.Desktop, 3.0.8"
#:package BAUERGROUP.Shared.Desktop@3.0.8
#addin nuget:?package=BAUERGROUP.Shared.Desktop&version=3.0.8Install as a Cake Addin
#tool nuget:?package=BAUERGROUP.Shared.Desktop&version=3.0.8Install as a Cake Tool
👁 .NET 10
👁 .NET 8
👁 .NET Standard 2.0
👁 NuGet
A comprehensive multi-target .NET shared library platform providing essential building blocks for enterprise applications within the BAUER GROUP ecosystem. Supports .NET 10, .NET 8, and .NET Standard 2.0 for maximum compatibility.
The BAUER GROUP Shared Libraries form a modular, multi-project solution designed to accelerate development across the organization. It provides battle-tested implementations for common enterprise requirements including logging, data persistence, API integrations, cloud services, and desktop UI components.
| Package | Target Frameworks | Description |
|---|---|---|
BAUERGROUP.Shared.Core |
net10.0, net8.0, netstandard2.0 | Core utilities, extensions, logging (NLog + Sentry), resilience patterns (Polly) |
BAUERGROUP.Shared.Data |
net10.0, net8.0, netstandard2.0 | Data persistence: SQLite key-value storage, LiteDB, in-memory database (NMemory) |
BAUERGROUP.Shared.API |
net10.0, net8.0, netstandard2.0 | Generic REST API client (RestSharp) with JSON serialization |
BAUERGROUP.Shared.Cloud |
net10.0, net8.0 | Cloud services: Cloudinary, RemoveBG, Fixer.io currency exchange |
BAUERGROUP.Shared.Desktop |
net10.0-windows, net8.0-windows | WPF/WinForms utilities, behaviors, reactive extensions |
BAUERGROUP.Shared.Desktop.Browser |
net10.0-windows, net8.0-windows | Embedded Chromium browser (CefSharp) and WebView2 for WPF |
BAUERGROUP.Shared.Desktop.Reporting |
net10.0-windows, net8.0-windows | Stimulsoft Reports integration* |
*Requires separate Stimulsoft license
# Core package (required)
Install-Package BAUERGROUP.Shared.Core
# Optional packages
Install-Package BAUERGROUP.Shared.Data
Install-Package BAUERGROUP.Shared.API
Install-Package BAUERGROUP.Shared.Cloud
Install-Package BAUERGROUP.Shared.Desktop
Install-Package BAUERGROUP.Shared.Desktop.Browser
Install-Package BAUERGROUP.Shared.Desktop.Reporting
dotnet add package BAUERGROUP.Shared.Core
using BAUERGROUP.Shared.Core.Logging;
// Configure logging (settings are applied through the Configuration property)
BGLogger.Configuration.ApplicationName = "MyApplication";
BGLogger.Configuration.LogDirectory = @"C:\Logs";
// Enable Sentry error tracking (optional)
BGLogger.Configuration.SentryDsn = "https://your-sentry-dsn@sentry.io/project";
BGLogger.Configuration.SentryEnvironment = "production";
BGLogger.Configuration.ErrorTracking = true;
// Enable additional targets as needed
BGLogger.Configuration.Console = true;
BGLogger.Configuration.File = true; // Enabled by default
// Use the logger
BGLogger.Info("Application started");
BGLogger.Error(exception, "An error occurred");
// Enable automatic unhandled exception reporting
BGLogger.UnhandledExceptionReporting(true);
using BAUERGROUP.Shared.Data.EmbeddedDatabase;
// Create a thread-safe, persistent key-value dictionary backed by SQLite
using var storage = new ConcurrentPersistentDictionary<string, MyData>(
dataStorageDirectory: @"C:\Data",
databaseName: "MyDatabase",
tableName: "MyTable"
);
// Store and retrieve data
storage.Create("key1", new MyData { Name = "Example" });
var data = storage.Read("key1");
bool exists = storage.Exists("key1");
storage.Delete("key1");
// Read all entries
var allData = storage.Read();
var allWithKeys = storage.ReadWithKeys();
using BAUERGROUP.Shared.Desktop.Browser;
// Show embedded Chrome browser window (non-blocking)
WPFToolboxBrowser.ChromeEmbeddedWebbrowserWindow(
title: "Web View",
url: "https://example.com",
owner: this,
wait: false
);
// Show browser and wait for it to close (modal dialog)
WPFToolboxBrowser.ChromeEmbeddedWebbrowserWindow(
title: "Web View",
url: "https://example.com",
owner: this,
wait: true
);
// Take a screenshot of a website
await WPFToolboxBrowser.MakeWebsiteScreenshot(
"https://example.com",
"screenshot.png"
);
Desktop, Desktop.Browser, Desktop.Reporting)BAUERGROUP.Shared.Desktop.ReportingBAUERGROUP.Shared/
├── src/
│ ├── BAUERGROUP.Shared.Core/ # Core utilities & logging
│ ├── BAUERGROUP.Shared.Data/ # Data persistence layer
│ ├── BAUERGROUP.Shared.API/ # Generic REST API client
│ ├── BAUERGROUP.Shared.Cloud/ # Cloud service integrations
│ ├── BAUERGROUP.Shared.Desktop/ # WPF/WinForms utilities
│ ├── BAUERGROUP.Shared.Desktop.Browser/ # Embedded browser
│ └── BAUERGROUP.Shared.Desktop.Reporting/ # Reporting components
├── tests/
│ └── BAUERGROUP.Shared.Test/ # Unit tests
├── assets/ # Application icons
├── docs/
│ ├── BUILD.md # Build documentation
│ ├── DEPENDENCY-LICENSES.md # License analysis
│ ├── DOCUMENTATION-PLATFORM-SPEC.md # Platform specification
│ ├── INSTALLATION.md # Installation guide
│ └── VERSIONING.md # Version management
├── CHANGELOG.md # Version history
├── Directory.Build.props # Shared build configuration
├── Directory.Packages.props # Central package management
└── BAUERGROUP.Shared.slnx # Solution file
# Clone the repository
git clone https://github.com/bauer-group/LIB-Shared-NET.git
cd LIB-Shared-NET
# Restore dependencies
dotnet restore
# Build solution
dotnet build
# Run tests
dotnet test
dotnet pack --configuration Release
Packages will be output to bin/Release/*.nupkg
The library uses NLog for logging. Configuration is done programmatically via BGLogger.Configuration:
// Available logging targets (can be enabled/disabled at runtime)
BGLogger.Configuration.File = true; // File logging (default: enabled)
BGLogger.Configuration.Console = true; // Console output
BGLogger.Configuration.ConsoleColored = true; // Colored console output
BGLogger.Configuration.Network = true; // UDP network logging
BGLogger.Configuration.NLogViewer = true; // NLog Viewer (Log4J XML format)
BGLogger.Configuration.Memory = true; // In-memory log storage
BGLogger.Configuration.Debugger = true; // VS Debugger output
BGLogger.Configuration.Eventlog = true; // Windows Event Log (.NET only)
BGLogger.Configuration.ErrorTracking = true; // Sentry integration
Sentry error tracking is integrated via the official Sentry.NLog package:
// Configure Sentry (must set DSN before enabling ErrorTracking)
BGLogger.Configuration.SentryDsn = "https://...@sentry.io/...";
BGLogger.Configuration.SentryEnvironment = "production";
BGLogger.Configuration.SentryMinimumEventLevel = NLog.LogLevel.Error;
BGLogger.Configuration.SentryMinimumBreadcrumbLevel = NLog.LogLevel.Debug;
BGLogger.Configuration.ErrorTracking = true;
Features:
This project uses various open-source packages. See for a complete license analysis.
| Package | License | Notes |
|---|---|---|
| NLog | BSD 3-Clause | Logging framework |
| CefSharp | BSD 3-Clause | Chromium browser |
| Sentry | MIT | Error tracking |
| Stimulsoft | Proprietary | Requires separate license |
Contributions are welcome! Please follow these guidelines:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)For questions or issues:
This project is licensed under the MIT License - see the file for details.
Note: Some dependencies (Stimulsoft) require separate commercial licenses. See for details.
BAUER GROUP - Building Better Software Together
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows7.0 net8.0-windows7.0 is compatible. net9.0-windows net9.0-windows was computed. net10.0-windows net10.0-windows was computed. net10.0-windows7.0 net10.0-windows7.0 is compatible. |
Showing the top 2 NuGet packages that depend on BAUERGROUP.Shared.Desktop:
| Package | Downloads |
|---|---|
|
BAUERGROUP.Shared.Desktop.Browser
Embedded Chromium browser controls powered by CefSharp for WPF desktop applications with full-screen support and JavaScript interop. |
|
|
BAUERGROUP.Shared.Desktop.Reporting
Report generation and visualization powered by Stimulsoft Reports with WPF designer and viewer integration. |
This package is not used by any popular GitHub repositories.