XLibur 0.730.0
See the version list below for details.
dotnet add package XLibur --version 0.730.0
NuGet\Install-Package XLibur -Version 0.730.0
<PackageReference Include="XLibur" Version="0.730.0" />
<PackageVersion Include="XLibur" Version="0.730.0" />
<PackageReference Include="XLibur" />
paket add XLibur --version 0.730.0
#r "nuget: XLibur, 0.730.0"
#:package XLibur@0.730.0
#addin nuget:?package=XLibur&version=0.730.0
#tool nuget:?package=XLibur&version=0.730.0
XLibur
About
XLibur is a .NET library for reading, manipulating and writing Excel 2007+ (.xlsx, .xlsm) files. It aims to provide an intuitive and user-friendly interface to dealing with the underlying OpenXML API.
Install
The recommended package is XLibur.Bundle, which installs the core library together with the
default font engine and behaves like ClosedXML out of the box:
dotnet add package XLibur.Bundle
Or via the Package Manager console:
PM> Install-Package XLibur.Bundle
Quick start
XLibur lets you create and manipulate Excel files without Excel installed — a common use case is generating reports on a web server.
using (var workbook = new XLWorkbook())
{
var worksheet = workbook.Worksheets.Add("Sample Sheet");
worksheet.Cell("A1").Value = "Hello World!";
worksheet.Cell("A2").FormulaA1 = "=MID(A1, 7, 5)";
workbook.SaveAs("HelloWorld.xlsx");
}
More in the Getting Started guide.
Ancestry
XLibur forked ClosedXML v0.105. Namespaces are prefixed with XLibur. Surface API is mostly compatible, but check the docs for details.
Migration from ClosedXML
The public API surface is largely unchanged from ClosedXML 0.105. To migrate:
- Install
XLibur.Bundle(see Install) - Replace
using ClosedXMLnamespace references withusing XLibur
One behavioural difference: font engines. ClosedXML bundles SixLabors.Fonts into its core assembly for text measurement (column auto-fit, row heights, glyph metrics). XLibur keeps the core assembly free of any font library and ships the font engine as a separate, swappable package, so you can pick one whose license suits you.
With XLibur.Bundle, no code changes are needed — the SkiaSharp
engine (MIT) auto-registers the first time you create a workbook, and falls back to an embedded
metric-only Calibri-compatible font so measurement works in headless environments. Installing the
bare XLibur package with no font engine throws an InvalidOperationException on workbook creation
telling you which package to add.
To use a different engine — including SixLabors 1.x, which matches ClosedXML 0.105's behaviour exactly — see docs/font-architecture.md for the available packages, their licenses, and the engine resolution order.
Report templating
XLibur.Report generates reports from .xlsx templates: author the report in Excel, bind .NET data
to it, and generate the finished workbook. Charts, pivot tables and pictures survive range expansion,
which is the part comparable libraries do not do.
using var template = new XLTemplate("SalesReport.xlsx");
template.AddVariable("Company", "Contoso");
template.AddVariable("Sales", sales);
template.Generate();
template.SaveAs("SalesReport-2026.xlsx");
License
Credits
ClosedXML authors who developed the core code we build on. Manuel de Leon, Jan Havlíček, Francois Botha, Aleksei Pankratev.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. 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. 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. net11.0 is compatible. |
-
net10.0
- DocumentFormat.OpenXml (>= 3.5.1)
- ExcelNumberFormat (>= 1.1.0)
- JetBrains.Annotations (>= 2026.2.0)
- OpenMcdf (>= 3.4.0)
- RBush.Signed (>= 4.0.0)
- XLibur.ClosedXML.Parser (>= 5.0.2)
-
net11.0
- DocumentFormat.OpenXml (>= 3.5.1)
- ExcelNumberFormat (>= 1.1.0)
- JetBrains.Annotations (>= 2026.2.0)
- OpenMcdf (>= 3.4.0)
- RBush.Signed (>= 4.0.0)
- XLibur.ClosedXML.Parser (>= 5.0.2)
-
net8.0
- DocumentFormat.OpenXml (>= 3.5.1)
- ExcelNumberFormat (>= 1.1.0)
- JetBrains.Annotations (>= 2026.2.0)
- OpenMcdf (>= 3.4.0)
- RBush.Signed (>= 4.0.0)
- XLibur.ClosedXML.Parser (>= 5.0.2)
-
net9.0
- DocumentFormat.OpenXml (>= 3.5.1)
- ExcelNumberFormat (>= 1.1.0)
- JetBrains.Annotations (>= 2026.2.0)
- OpenMcdf (>= 3.4.0)
- RBush.Signed (>= 4.0.0)
- XLibur.ClosedXML.Parser (>= 5.0.2)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on XLibur:
| Package | Downloads |
|---|---|
|
XLibur.Bundle
See release notes https://github.com/XLibur/XLibur/releases/tag/v0.730.1-beta.1 Convenience meta-package for XLibur. Installs XLibur together with the default SkiaSharp font engine (MIT). The engine auto-registers on first use — no startup call required. Equivalent to installing XLibur and XLibur.Fonts.SkiaSharp separately. |
|
|
XLibur.Fonts.SixLabors.V1
See release notes https://github.com/XLibur/XLibur/releases/tag/v0.730.0 Default IXLFontEngine implementation for XLibur using SixLabors.Fonts 1.x (Apache 2.0). |
|
|
XLibur.Fonts.SkiaSharp
See release notes https://github.com/XLibur/XLibur/releases/tag/v0.730.1-beta.1 SkiaSharp implementation of IXLFontEngine for XLibur. |
|
|
XLibur.Fonts.SixLabors
See release notes https://github.com/XLibur/XLibur/releases/tag/v0.730.1-beta.1 SixLabors.Fonts 2.x implementation of IXLFontEngine for XLibur. |
|
|
XLibur.Report
See release notes https://github.com/XLibur/XLibur/releases/tag/report-v0.620.0 Report templating for XLibur. Author a report as an ordinary .xlsx template — placeholder expressions, named ranges and tag markers — bind .NET data to it, and generate the finished workbook. Charts, pivot tables and pictures survive range expansion. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.730.1-beta.1 | 0 | 10/26/2026 |
| 0.730.0 | 0 | 10/26/2026 |
| 0.720.0 | 136 | 10/20/2026 |
| 0.710.0 | 159 | 10/18/2026 |
| 0.700.0 | 177 | 10/5/2026 |
| 0.630.1-rc.18 | 112 | 10/4/2026 |
| 0.630.0 | 241 | 9/27/2026 |
| 0.620.0 | 211 | 9/26/2026 |
| 0.610.0 | 234 | 9/16/2026 |
| 0.600.0 | 197 | 9/16/2026 |
| 0.500.0 | 236 | 9/13/2026 |
| 0.400.0 | 398 | 9/1/2026 |
| 0.311.2-alpha.34 | 115 | 8/31/2026 |
| 0.311.2-alpha.28 | 105 | 8/28/2026 |
| 0.311.1 | 259 | 8/11/2026 |
| 0.311.0 | 186 | 8/8/2026 |
| 0.310.1-beta.5 | 124 | 8/8/2026 |
| 0.310.0 | 187 | 8/6/2026 |
| 0.301.0 | 224 | 8/4/2026 |
| 0.300.1-beta.4 | 111 | 8/4/2026 |