Skip to main content
See AttachedGet the code ↗

Give the attachment its moment.

Your app does the work. The report carries it forward. Open-source, flow-based documents from JSON to HTML and PDF.

Sample reports compiled by See Attached, with synthetic dataStart building

Two JSON files. One useful attachment.

1

Define the shape.

A header, a body that flows, and a footer. Save the layout as JSON.

2

Bring the data.

Keep the values separate. Bind property paths, format fields, and populate tables.

3

Send it out.

.NET compiles self-contained HTML. Playwright prints the same document to PDF.

Useful looks good.

Three real reports. Synthetic data. Working downloads.

Synthetic invoice compiled by See Attached

01 / Invoice

Line items, quantities, currency, and a total. The everyday attachment, done clearly.

Learn more →
Synthetic statement compiled by See Attached

02 / Statement

Dates, activity, and a running balance. A month of transactions in one readable document.

Learn more →
Synthetic packing list compiled by See Attached

03 / Packing list

SKUs, boxes, and quantities. The list that keeps the handoff organized.

Learn more →

Small pieces. A clear system.

A focused v1 for documents that flow. Here is what the source actually does.

Flow, not a free canvas.

Text, fields, images, spacers, columns, and tables. Tables split by row; their headings repeat when printed.

Learn more →

One definition. Real outputs.

A separate JSON data object binds on the .NET side. The compiler produces HTML; the exporter produces PDF.

Learn more →

Yours to inspect.

MIT-licensed source. A Windows builder, a Blazor viewer, and a Next.js display sample.

Learn more →

Before you attach.

A few useful answers, including the boundaries.

Your next attachment starts here.

Take the source. Define the layout. Give your data a document worth opening.

Get the code ↗
Want to look around first? Explore the examples