ScreamCode.Reporting.Excel 1.1.3

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

ScreamCode.Reporting

Build faster. Report smarter.

A modular .NET 8 reporting engine with an embedded Blazor admin portal. Add powerful reporting capabilities to any ASP.NET Core application in minutes.

License .NET Version


🚀 Quick Start

dotnet add package ScreamCode.Reporting.Core
dotnet add package ScreamCode.Reporting.Admin
dotnet add package ScreamCode.Reporting.Pdf
dotnet add package ScreamCode.Reporting.Excel

Program.cs

builder.Services
    .AddScreamReporting(builder.Configuration)
    .AddPdf()
    .AddExcel()
    .AddBuilder()
    .AddTemplates()
    .AddAdmin()
    .AddDataProvider<YourReportDataProvider>();

var app = builder.Build();

await app.Services.InitializeScreamReportingAsync();
await app.Services.EnsureAdminDatabaseAsync();

app.UseStaticFiles();
app.UseAntiforgery();
app.MapBlazorHub();

var adminPath = builder.Configuration["ScreamReporting:AdminPath"] ?? "reportadmin";
app.MapFallbackToPage($"/{adminPath}/{{**path}}", "/_Host");
app.MapFallbackToPage($"/{adminPath}", "/_Host");

app.Run();

appsettings.json

{
  "ScreamReporting": {
    "LicenseKey": "",
    "ApplicationName": "YourApp",
    "AdminPath": "reportadmin",
    "AdminAuth": {
      "Enabled": true,
      "Username": "admin",
      "Password": "your-password",
      "SessionTimeoutMinutes": 60
    },
    "Pdf": {
      "DefaultOrientation": "Portrait",
      "TimeoutMs": 30000
    }
  }
}

Implement IReportDataProvider

public class OrdersDataProvider : IReportDataProvider
{
    public string EntityName => "orders";
    public string DisplayName => "Orders";

    public IReadOnlyList<ReportColumnDefinition> AvailableColumns =>
    [
        new() { Name = "Id", DisplayName = "Order ID", Type = "string" },
        new() { Name = "CustomerName", DisplayName = "Customer", Type = "string" },
        new() { Name = "Total", DisplayName = "Total", Type = "decimal" },
        new() { Name = "CreatedAt", DisplayName = "Date", Type = "datetime" }
    ];

    public IReadOnlyList<ReportFilterDefinition> AvailableFilters =>
    [
        new() { Name = "CreatedAt", DisplayName = "Date", Type = "daterange" }
    ];

    public async Task<ReportTable> GetDataAsync(ReportBuilderRequest request, CancellationToken ct = default)
    {
        // Return your data here
    }

    public async Task<int> GetCountAsync(ReportBuilderRequest request, CancellationToken ct = default)
    {
        // Return count here
    }
}

✨ Features

Feature Community Professional Enterprise
PDF generation
Excel export
Report Builder
Max reports 10 30 Unlimited
Max templates 5 10 Unlimited
HTML Templates 1 5 10
Images in reports
Charts
Scheduler + Email Max 5 Unlimited
Audit Trail 30 days 365 days
Backup / Restore
Digital Signature
Watermark (Community)
Price Free $149 $299

30-day Professional trial included. No credit card required.


🔐 Authentication

"AdminAuth": {
  "Enabled": true,
  "Username": "admin",
  "Password": "your-secure-password"
}

External auth (use your own ASP.NET Identity, JWT, etc.)

app.MapFallbackToPage("/reportadmin/{**path}", "/_Host")
   .RequireAuthorization("AdminRole");
"AdminAuth": {
  "Enabled": false,
  "ExternalAuthConfigured": true
}

📦 Packages

Package Description
ScreamCode.Reporting.Core Core engine, licensing, interfaces
ScreamCode.Reporting.Admin Embedded Blazor admin portal
ScreamCode.Reporting.Pdf PDF generation via Playwright
ScreamCode.Reporting.Excel Excel (.xlsx) export
ScreamCode.Reporting.Builder Dynamic report builder
ScreamCode.Reporting.Templates HTML template engine
ScreamCode.Reporting.Audit Audit trail (Professional+)
ScreamCode.Reporting.Scheduler Report scheduling (Professional+)

🖥️ Chromium Setup (for PDF generation)

Run once after deployment:

.\ScreamCode-Install.ps1

Or manually:

.\playwright.ps1 install chromium

🌍 Localization

Built-in: English and Bosnian. Add any language by placing a JSON file in Localization/Languages/:

publish/
└── Localization/
    └── Languages/
        ├── en.json
        ├── bs.json
        └── de.json  ← add your language

📄 License

MIT — free to use, modify and distribute.


Product 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 was computed.  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 was computed.  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.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on ScreamCode.Reporting.Excel:

Package Downloads
ScreamCode.Reporting.Admin

Embedded admin portal for ScreamCode.Reporting — a full-featured Blazor Server admin UI accessible at /reportadmin. Manage reports, templates, images, schedules, audit trail, backup and license from one portal.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.3 35 5/13/2026
1.1.2 127 5/8/2026
1.1.1 108 5/5/2026
1.1.0 109 5/4/2026