A look at gildas-lormeau/single-file-cli: 1.7k stars on GitHub, written primarily in JavaScript, tracked under the Developer Tools category. CLI tool for saving a faithful copy of a complete web page in a single HTML file (based on SingleFile)
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
SingleFile can be launched from the command line by running it into a (headless) browser.
It runs through Deno as a standalone script injected into the web page via the Chrome DevTools Protocol, or via WebDriver BiDi when using Firefox, instead of being embedded into a WebExtension.
Installation
SingleFile can be run without installing it, just download the executable file and save it in the directory of your choice here: https://github.com/gildas-lormeau/single-file-cli/releases
Make sure Chrome or a Chromium-based browser is installed in the default folder. Installations for the current user are also found (%LOCALAPPDATA% on Windows, ~/Applications on macOS, snap and the PATH on Linux). Otherwise you might need to set the --browser-executable-path option to help SingleFile locating the path of the executable file. Firefox can be used instead by setting the --browser-engine firefox option, with some limitations described in the help. The Flatpak version of Firefox needs access to /tmp, where the temporary profile is created. Allow it with flatpak override --user --filesystem=/tmp org.mozilla.firefox and set --browser-executable-path to /var/lib/flatpak/exports/bin/org.mozilla.firefox, or to ~/.local/share/flatpak/exports/bin/org.mozilla.firefox for a per-user installation.
docker run singlefile "https://www.wikipedia.org" --browser-engine firefox
Run and redirect the result into a file
docker run singlefile "https://www.wikipedia.org" > wikipedia.html
Run and mount a volume to get the saved file in the current directory
Save one page
docker run -v %cd%:/usr/src/app/out singlefile "https://www.wikipedia.org" wikipedia.html
(Windows)
docker run -v $(pwd):/usr/src/app/out singlefile "https://www.wikipedia.org" wikipedia.html
(Linux/UNIX)
Save one or multiple pages by using the filename template (see
--filename-template option)
docker run -v %cd%:/usr/src/app/out singlefile "https://www.wikipedia.org" --dump-content=false
(Windows)
docker run -v $(pwd):/usr/src/app/out singlefile "https://www.wikipedia.org" --dump-content=false
(Linux/UNIX)
An alternative docker file can be found here
https://github.com/screenbreak/SingleFile-dockerized. It allows you to save
pages from the command line interface or through an HTTP server.
Manual installation
Install Deno
There are 3 ways to download the code of SingleFile, choose the one you prefer:
Install with npm and run single-file via npx (npm and npx are installed with Node.js)
npm install "single-file-cli"
npx single-file ...
You can also install SingleFile globally with -g when running npm install.
Download and unzip manually the
main archive
provided by Github
unzip main.zip .
cd single-file-cli-main
Download with git
git clone --depth 1 --recursive https://github.com/gildas-lormeau/single-file-cli.git
cd single-file-cli
Make single-file executable (Linux/Unix/BSD etc.).
chmod +x single-file
Run
Syntax
single-file <url> [output] [options ...]
Display help
single-file --help
Record what was observed while saving, for later verification: see MANIFEST.md
Save a page needing a logged-in session. Create the profile first, log in
to the website in the browser window, and quit the browser to save it. Then
reuse the profile as many times as needed, it is copied and left unmodified.
Save http://info.cern.ch (i.e. the first website) and its internal links into a single self-extracting ZIP file, and mark the links to pages missing from the archive
The exit code is 0 when all the pages have been saved, 1 when at least one capture failed (the other pages of the batch or the crawl are still saved), and 255 when an error prevented the process from running.
Compile executables
Compile executables into /dist
./compile.sh
License
SingleFile and SingleFile CLI are 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.
How active is development on gildas-lormeau/single-file-cli?
The most recent commit recorded on gildas-lormeau/single-file-cli was 10 months ago, based on the GitHub push timestamp. The repository has 147 forks — one of the better signals of community interest.
Is gildas-lormeau/single-file-cli open source?
Yes — gildas-lormeau/single-file-cli ships under the AGPL-3.0 license, which makes its source code freely readable (and, depending on license terms, forkable and reusable). Source: github.com/gildas-lormeau/single-file-cli.
What license does gildas-lormeau/single-file-cli use?
gildas-lormeau/single-file-cli is released under the AGPL-3.0 license. Always verify the LICENSE file directly on GitHub for the authoritative terms — license strings can be edited out of sync with a project's actual stance.
What topics is gildas-lormeau/single-file-cli associated with?
Where can I see gildas-lormeau/single-file-cli in action?
The project maintains a homepage at https://www.getsinglefile.com. The README tab on this page also usually contains screenshots and a quickstart.
Where do I read more about gildas-lormeau/single-file-cli?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/gildas-lormeau/single-file-cli is the definitive source.
Read full README in the tab above.
Want a second opinion on single-file-cli?
Ask an AI that can read this page — one click and you get its take on single-file-cli.