ToolUp.Facts.Presentation 0.38.1

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

ToolUp.Facts.Presentation

From a gated fact series to a Fuaran-UI node. A presentation request says what to draw — a trend, a breakdown, a comparison or a table of one fact table's metric(s) over a period — and a pure builder draws the series the fact browse's series read answered as a validated Fuaran-UI node, with the BlockProvenance that produced it.

The request is the whole of what an author (a person or a model) writes for a block. It carries no number: every number on the page comes from the series read, under the disclosure gate the facts are published under.

Compiled by both compilers (the sources ship under fable/), so a browser rebuilds exactly the node a server built.

What it gives you

  • PresentationRequest — kind, table id, metrics, subject prefix and level, period ({ day; rangeDays } or { from; to }), compare-to, title and annotations — with a JSON codec (PresentationRequest.toJson / ofJson) that refuses a malformed request by name: the field it is missing, the kind it does not know. PresentationRequest.toQueries gives the series reads the request asks for.
  • Presentation.build — from a request and one SeriesAnswer per metric (the gated FactSeries, or the read's refusal) to a PresentationBlock: the node, its provenance and its notes.
  • The gap discipline. Fuaran-UI's chart lowering reads a missing cell as 0, so a withheld or absent point is never left in a chart's rows: a trend drops the day and marks it on the axis, a breakdown and a comparison drop the subject, a table drops the cell. Each is named, with its reason, beside the block. A refused read is a callout naming the refusal.
  • Validated before it leaves. Every chart is drawn from a canonical columnar table, so the Fuaran-UI pre-emit validator grounds every field it names; a node the validator refuses is a builder defect (PresentationDefect.NodeRefused), never emitted.
  • Fact cells. A table cell is a Fact node carrying its fact id as data-fact.
open ToolUp.Facts.Presentation

match PresentationRequest.ofJson requestJson with
| Error e -> Error(PresentationRequestError.describe e)
| Ok request ->
    // run PresentationRequest.toQueries through IFactBrowseApi.QuerySeries, then:
    Presentation.build request [ SeriesAnswer.Answered series ]

Dependencies

ToolUp.Facts.Shared, ToolUp.AI.Wire, and the published Apache-2.0 Fuaran.UI, Fuaran.UI.Charts and Fuaran.Core.Column packages from nuget.org.

Apache-2.0.

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on ToolUp.Facts.Presentation:

Package Downloads
ToolUp.AI.Client

ToolUp.AI Client — Fable + Elmish + Feliz AI surface: side-panel MVU, SSE client, AI assistant UI, AISettings UI, AIClientConfig wrapper. Depends on ToolUp.Platform.Client + ToolUp.AI.Core.

ToolUp.Facts.Presentation.Server

ToolUp.Facts.Presentation Server — the render_chart and render_table AI tools: the model writes a presentation request, the server reads the series it names under the disclosure gate at the tool-result door, draws it with the presentation builders and answers with a text summary the model reads and the block the assistant message carries. And evaluate_pipeline in the same answering form: the summary the model reads and a pipeline block part carrying the request and never a row, with the re-run endpoint a reader's panel draws the block from under the reader's own gate. Composed opt-in with PresentationCompose.withRenderTools and PresentationCompose.withPipelineTool; a deployment that composes neither carries no Fuaran-UI dependency. And the page request resolvers a stored page renders through, a presentation request and a pipeline request answered under the reader's gate and cached per session, composed with PresentationCompose.withPageRequests under a composed fact store.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.38.1 0 11/1/2026
0.38.0 0 10/31/2026
0.37.0 83 10/29/2026
0.36.0 79 10/29/2026