SingleFile Documentation

Web Extension for saving a faithful copy of a complete web page in a single HTML file

22,107 stars JavaScript JavaScript 1 file ยท ~2,722 tokens #annotations#archive#archiver#auto-save#browser#chrome#chrome-extension#cli
RAW Doc

SingleFile

SingleFile helps you to save a complete web page into a single HTML
file. SingleFile is a Web Extension (and a CLI tool) compatible with Chrome, Firefox
(Desktop and Mobile), Microsoft Edge, Safari, Vivaldi, Brave, Waterfox, Yandex
browser, and Opera.

Table of Contents

Demo

https://user-images.githubusercontent.com/396787/156664907-cc458e35-f41b-45ca-91eb-372213812b44.mp4

Install

SingleFile can be installed from the store of:

You can also download the zip file
(https://github.com/gildas-lormeau/SingleFile/archive/master.zip) of the project
and install it manually by unzipping it somewhere on your disk and following
these instructions:

Getting started

  • Click on the SingleFile button in the extension toolbar to save the page.
  • You can click again on the button to cancel the action when processing a page.

Additional notes

  • Open the context menu by right-clicking the SingleFile button in the extension
    toolbar or on the webpage. It allows you to save:
    • the current tab,
    • the selected content,
    • the selected frame.
  • You can also process multiple tabs in one click and save:
    • the selected tabs,
    • the unpinned tabs,
    • all the tabs.
  • Select "Annotate and save the page..." in the context menu to:
    • highlight text,
    • add notes,
    • remove content.
  • The context menu also allows you to activate the auto-save of:
    • the current tab,
    • the unpinned tabs,
    • all the tabs.
  • With auto-save active, pages are automatically saved every time after being
    loaded (or before being unloaded if not).
  • Right-click on the SingleFile button and select "Manage extension" (Firefox) /
    "Options" (Chrome) to open the options page.
  • Enable the option "Destination > save to Google Drive" or "Destination >
    upload to GitHub" to upload pages to Google Drive or GitHub respectively.
  • Enable the option "Misc. > add proof of existence" to prove the existence of
    saved pages by linking the SHA256 of the pages into the blockchain.
  • You can use the customizable shortkey Ctrl+Shift+Y to save the current tab or
    the selected tabs. Go to about:addons and select "Manage extension shortcuts"
    in the cogwheel menu to change it in Firefox. Go to
    chrome://extensions/shortcuts to change it in Chrome.
  • The default save folder is the download folder configured in your browser, cf.
    about:addons in Firefox and chrome://settings in Chrome.
  • See the extension help in the options page for more detailed information about
    the options and technical notes.

FAQ

See https://github.com/gildas-lormeau/SingleFile/blob/master/faq.md

Release notes

See https://addons.mozilla.org/firefox/addon/single-file/versions/

Known Issues and Troubleshooting

See https://github.com/gildas-lormeau/SingleFile/blob/master/known-issues.md

Command Line Interface (SingleFile CLI)

You can save web pages to HTML from the command line interface. See here for
more info: https://github.com/gildas-lormeau/single-file-cli.

Integration with user scripts

You can execute a user script just before (and after) SingleFile saves a page.
For more info, see
https://github.com/gildas-lormeau/SingleFile/wiki/How-to-execute-a-user-script-before-a-page-is-saved.

File format comparison

| | HTML | Self-extracting ZIP | MHTML | Webarchive (Safari) | HTML+folder |
| --- | :---: | :---: | :---: | :---: | :---: |
| Pages are saved as a single file | โœ“ | โœ“ | โœ“ | โœ“ | |
| HTML and styles are minified | โœ“ | โœ“ | | | |
| Unused HTML and styles are removed from files | โœ“ | โœ“ | | | |
| Binary resources are not encoded in base 64 | | โœ“ | | โœ“ | โœ“ |
| Files are compressed | | โœ“ | | | |
| Files can be viewed without installing any extension | โœ“ | โœ“ยน | โœ“ยฒ | โœ“ยณ | โœ“ |
| Files can be viewed without running JavaScript | โœ“ | | โœ“ | โœ“ | โœ“ |
| Files can be unzipped to extract page resources | | โœ“ | | | n/a |
| Files contains the text of the page (plain or formatted) which can be indexed | โœ“ | โœ“โด | โœ“ | โœ“ | โœ“ |

Footnotes:

ยน When using the "universal" self-extracting file format

ยฒ Only in Chromium-based browsers, and Internet Explorer

ยณ Only in Safari

โด An option must be enabled in the extension

Projects using/compatible with SingleFile

Privacy Policy

See https://github.com/gildas-lormeau/SingleFile/blob/master/privacy.md

Contributors

See https://github.com/gildas-lormeau/SingleFile/blob/master/contributors.md

Code derived from third party projects

Icons

License

SingleFile is licensed under AGPL. Code derived from third-party projects is
licensed under MIT. Please contact me at gildas.lormeau <at> gmail.com if
you are interested in licensing the SingleFile code for a commercial service or
product.

Suggestions are welcome :)