BrowserRuntime
Browser helper for running a root Effect program.
This module exports runMain, a browser version of the main Effect runner. It forwards runner options to the core runtime and adds a beforeunload listener that interrupts the main fiber when the page is unloading.
Running
Signature
declare const runMain: { (options?: { readonly disableErrorReporting?: boolean; readonly teardown?: Teardown; }): <E, A>(effect: Effect<A, E>) => void; <E, A>( effect: Effect<A, E>, options?: { readonly disableErrorReporting?: boolean; readonly teardown?: Teardown; }, ): void;};
Runs an effect as the browser main program and interrupts its fiber when the page receives a
beforeunloadevent.When to use
Use to launch a browser page, single-page application, demo, or browser test harness as a root Effect program.
Details
Supports both direct and curried call forms. Options are forwarded to
makeRunMain, includingdisableErrorReportingand customteardownbehavior.Gotchas
The
beforeunloadinterruption is best-effort. Browser teardown may prevent asynchronous finalizers, network work, timers, or prompts from completing.