A code-first reporting engine for .NET that generates PDF reports from various data sources without requiring a database.
PdfReport.Core is a .NET library that provides a code-first reporting engine for generating PDF documents. It simplifies report creation by abstracting the complexities of iTextSharp and EPPlus, allowing developers to produce reports from in-memory data sources without needing a database. The library supports a wide range of features including custom templates, RTL languages, and advanced layouts.
.NET developers who need to generate PDF reports in applications such as web apps, desktop tools, or backend services, especially those working with in-memory data or requiring RTL language support.
It saves significant development time by eliminating the need to learn low-level PDF manipulation APIs, offering a streamlined, code-first approach with extensive customization options and cross-platform compatibility.
PdfReport.Core is a code first reporting engine, which is built on top of the iTextSharp.LGPLv2.Core and EPPlus.Core libraries
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables type-safe report definitions in C#, reducing errors and improving maintainability, as highlighted in the code-first design philosophy.
Specifically built for right-to-left languages like Arabic and Persian, addressing a niche need in multilingual report generation.
Supports in-memory collections and merged data sources, allowing reports without direct database dependencies, as evidenced by the multiple data sources feature.
Facilitates creation of master-detail reports, multi-column layouts, and mailing labels through programmatic control, per the advanced reporting section.
Requires extra NuGet packages and .csproj modifications for Linux support, adding complexity to deployment, as admitted in the README.
Tightly coupled with iTextSharp and EPPlus libraries, limiting flexibility if underlying libraries have bugs or licensing changes.
Despite abstraction, developers must learn a new API and concepts, which can be steeper than using simpler, template-based tools.