Monolith Try It
Save complete web pages as a single HTML file
Version
Latest known: 2.10.1 (2025-03-30)
Latest known: 2.10.1 (2025-03-30)
Examples
1. Save lyrics page with embeded CSS, image and javascript assets.
monolith.exe https://lyrics.github.io/db/P/Portishead/Dummy/Roads/ -o %title%.%timestamp%.html
2. Save webpage with all embedded resources.
monolith.exe https://cfdocs.org/cfexecute -o %title%.%timestamp%.html
3. Use Chromium (as a javascript engine) to act as a pre-processor to fetch and embed all content. (141mb page!)
"c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --headless --window-size=1920,1080 --run-all-compositor-stages-before-draw --virtual-time-budget=9000 --incognito --dump-dom https://cfsummit.adobeevents.com/ | monolith - -I -b https://cfsummit.adobeevents.com/ -o cfsummit2025.html
Try it
- Archive a local sample page
Archive the local sample.html via a file:// URL so monolith reads it straight off disk. Uses the wrapper's archive() helper, a typed CFML method that mirrors monolith's full README option set (audio/css/js/font/image/video filters, isolation, custom base URL, encoding, MHTML mode, custom UA, cookies, request timeout, and whitelist/blacklist domain arrays). The HTTP equivalent (http://<server>:<port>/TryIt/_samples/sample.html) does NOT work because Application.cfc routes .html requests through CFML and serves index.cfm content instead. - Archive a public URL with domain blacklist
Archive https://lyrics.github.io/db/P/Portishead/Dummy/Roads/ via archive() with blacklistDomains, which maps to monolith's `-B -d <domain>` flags from the README - assets coming from any blacklisted host are dropped. The example list blocks Google Analytics / Tag Manager, DoubleClick and Facebook trackers so the resulting archive is leaner and free of third-party content. Pass whitelistDomains instead to flip the meaning to 'allow only these'. - Archive a JS-rendered page via Obscura
Two-stage pipeline: Obscura (a single-binary headless browser, no Chrome/Node required) fetches the URL with a real browser engine and dumps the post-JavaScript-execution DOM HTML to stdout; monolith then bundles that rendered DOM into a single self-contained HTML file with -b set to the original URL so relative asset links still resolve. Mirrors monolith's README headless-Chrome example (`chromium --headless --dump-dom URL | monolith - -I -b URL -o out.html`) without requiring Chromium to be installed.
Agree to terms to run demos.