PlatenReports.Core
0.0.0
See the version list below for details.
dotnet add package PlatenReports.Core --version 0.0.0
NuGet\Install-Package PlatenReports.Core -Version 0.0.0
<PackageReference Include="PlatenReports.Core" Version="0.0.0" />
<PackageVersion Include="PlatenReports.Core" Version="0.0.0" />
<PackageReference Include="PlatenReports.Core" />
paket add PlatenReports.Core --version 0.0.0
#r "nuget: PlatenReports.Core, 0.0.0"
#:package PlatenReports.Core@0.0.0
#addin nuget:?package=PlatenReports.Core&version=0.0.0
#tool nuget:?package=PlatenReports.Core&version=0.0.0
Platen Reports
JSON-defined, SQL-driven PDF reporting for .NET, with a graphical designer.
Named for the platen — the plate in a press that pushes paper against the type.
Status: 0.x, pre-release. Nothing here is stable yet. Minor versions may break. See docs/versioning.md.
What it is
A report is a JSON definition: a tree of containers, rows, columns, tables and fields, bound to data. The engine loads a definition, pulls its data through a provider, and renders a PDF. The designer is a React component that edits those definitions visually.
Data reaches the engine through one port — IReportDataProvider.LoadAsync,
returning a nested Dictionary<string, object?>. The engine itself touches no
database, no ORM, and no SQL. Whatever can fill that dictionary can drive a
report.
| Package | Registry | What |
|---|---|---|
PlatenReports.Core |
NuGet | Definition model, binding, rendering pipeline |
PlatenReports.Sql |
NuGet | SQL data provider |
PlatenReports.Pdf |
NuGet | PDF layout + output |
@platen-reports/designer |
npm | React report designer |
All packages in this repository share one version and are released in lockstep. Equal versions are conformant — pin both sides to the same number.
Non-goals
These are out of scope by decision, not by omission. Scope creep into a general reporting product is this project's top risk, and the list exists so that "couldn't we also…" has a standing answer.
- No charts. No bar, line, or pie rendering. Reports are documents.
- No banded reports. No report/group/detail band model — the layout is a container tree, not a banded canvas, and the two do not merge cleanly.
- No scheduler. Nothing here runs reports on a timer, queues them, or mails them. That is the host's job, and every host already has one.
- No free-positioning canvas. The designer edits a flow layout. Absolute x/y placement is not coming; it makes definitions unmaintainable across page sizes and locales.
- No joins in definitions. A definition names a query; it does not compose one. Relational work belongs in SQL, authored in files, reviewed like code.
A feature request that needs one of these is not a small change to Platen Reports — it is a different product.
Licence
Apache-2.0. See LICENSE, NOTICE, and THIRD-PARTY-NOTICES.md.
Extracted from the Uptimiq CMMS codebase and relicensed by the copyright holder — see PROVENANCE.md.
Documentation
- Versioning policy — lockstep releases, the 0.x window
schemaVersionpolicy — format compatibility, the three version axes, conformance rules
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on PlatenReports.Core:
| Package | Downloads |
|---|---|
|
PlatenReports.AspNetCore
ASP.NET Core host integration for Platen Reports: MapReportEndpoints() maps the whole reporting HTTP surface as minimal APIs, plus DI wiring and the IReportAuthorizer port a host implements to decide who may do what. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-alpha.6 | 56 | 8/21/2026 |
| 0.1.0-alpha.5 | 56 | 8/19/2026 |
| 0.0.0 | 97 | 8/12/2026 |