Skip to content

Scriptorium

A family of focused F# libraries for building and testing F#/Fable applications.

Scriptorium.Ink

Pure ANSI colour and style for terminal output. Wrap any string in red, bold, underline, and more. Respects NO_COLOR. No dependencies.

Scriptorium.Parchment

Structured logging with severity levels and a pluggable sink system. Create loggers, scope them with child prefixes, and route output to the console or your own sink.

Scriptorium.Nib

Composable, fluent assertions. Chain expectations with >>, drill into nested values with inside, label failures with tag, and collect every failure before throwing — never just the first.

Scriptorium.Quill

The test runner that holds everything together. Sync and async tests, focus mode, pending tests, per-test timeouts, slow-test warnings, and clickable source links in terminal output.

Scriptorium.Nib.Snapshot

Snapshot assertions for Scriptorium.Nib. Serialize any value to a file on first run, then compare on every subsequent run. Update with a single environment variable.

Scriptorium.Nib.Browser

Playwright-powered DOM assertions and test helpers for end-to-end testing. Wraps Playwright’s expect API behind Nib’s composable DomAssertion type.