Open-source project
ccloli/E-Hentai-Downloader avatar
ccloli/E-Hentai-Downloader

ccloli/E-Hentai-Downloader: a userscript that zips E-Hentai galleries without spending GP

Download E-Hentai archive as zip file

2,438 stars148 forksJavaScriptGPL-3.0

At a glance

What is it?
A browser userscript that fetches gallery pages directly and packages the images into a zip client-side. It avoids the official archive page, which means it also avoids GP costs, and it inherits that page's throttling rules.
Who is it for?
Adopt it if you read E-Hentai occasionally, want a few hundred pages as a zip, and already run Tampermonkey or Violentmonkey. Skip it for large or old galleries where a torrent exists, for anything past roughly 500 MB per zip, and for Chrome 133+ users unwilling to enable Developer Mode and the Allow User Scripts permission.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 144 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 2, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What ccloli/E-Hentai-Downloader actually replaces

E-Hentai has an official archive download page, and that page charges GP or credits. This userscript does not touch it. The README says plainly that the script "won't download archive from E-Hentai archive download page, so it won't spend your GPs or credits." Instead it walks the gallery's own page list, collects each image URL, and pulls the files itself.

The intended user is someone reading a gallery in a browser who wants a local copy of a few hundred pages without paying the site's currency. The README also assumes a desktop browser: mobile support exists but the table carries a warning that "It's not a good idea to use it on mobile with limited RAM, but it can work, so it's up to you."

The script is not official. The README states that automated scripts are "NOT encouraged and may trigger throttle limit or even account ban," and asks users not to raise script problems on the site's forums. Treat that as the real boundary of the tool, not boilerplate.

The fetch, zip and save pipeline

The mechanism is entirely client-side. The script reads the gallery's page list, resolves the image URL for each page, then requests each image through `GM_xmlhttpRequest`. That API is the reason a userscript can do this at all: normal page JavaScript cannot make cross-origin requests to the image host, but the userscript manager's request function can.

Once the image bytes are in memory, the script hands them to JSZip, which builds the archive in the browser, and FileSaver.js, which triggers the download. There is no server component and no queue on the project's side. Everything the script downloads passes through your browser's memory and then through your connection.

That design explains most of the tool's limits. Memory holds the images before the zip is written, so a large gallery is bounded by available RAM and by browser blob limits, which the README puts at 2 GB for a Blob object and 4 GB for the zip format itself. The README also notes that Tampermonkey converts `GM_xhr.response` between String and ArrayBuffer on every image, which can freeze the tab for a second or more after each download.

Installing the userscript and running a first download

You need a userscript manager first. The README's compatibility table lists GreaseMonkey, Tampermonkey and Violentmonkey depending on browser and version, and the version floors matter: on Chrome, Tampermonkey 3.5.3630+ or Violentmonkey 2.2.6+, while Chrome 133+ needs Tampermonkey 5.0.0+ and marks Violentmonkey incompatible.

The project publishes two install sources, a raw file on GitHub and a GreasyFork listing. Open one of them with your manager active and it should offer to install the script.

bash
# install sources given in the README
https://github.com/ccloli/E-Hentai-Downloader/raw/master/e-hentai-downloader.user.js
https://sleazyfork.org/scripts/10379-e-hentai-downloader

After install, open a gallery page. A box labelled "E-Hentai Downloader" appears on the page, and the README's usage steps are: open the gallery, click "Download Archive" in that box, wait, then save the zip. The README's own tip is a coffee break between clicking and saving.

The two options worth setting before a first run are "Number Images" and "Pages Range", both named in the README's tips. Number Images prefixes the downloaded files so they sort in reading order. Pages Range limits how many pages go into one zip, which is the practical defence against the memory failures described later. The README says further options live under "Settings".

On Chrome 133+ with forced Manifest V3, the script will not load until you enable Developer Mode and, on Chrome 138+, the Allow User Scripts permission. The README links Tampermonkey's own FAQ for the steps. If the box never appears on a gallery page, that permission is the first thing to check.

Where the zip build fails, and what the README tells you to do instead

The failure modes are documented and they are size-related. On Firefox you may see an out-of-memory message; on Chrome, a file-not-found error. The project's wiki page for this recommends keeping each zip under 500 MB by using Pages Range, and enabling File System if you are on Chrome.

Those are workarounds, not fixes. The hard ceilings are the browser's 2 GB Blob limit and the 4 GB zip limit, and the README says that for galleries that large you should try other tools, naming gallery-dl. There is also a compatibility note that Tampermonkey's response handling can stall the working tab for one to three seconds per image depending on the device, and that on Edge the tab may report itself as not responding. The README's advice is to leave it alone.

The larger point is that this is the wrong tool for big or old galleries. The README says so directly: for a large gallery, prefer torrents where available, or the official archiver, and notes that for a gallery old enough to qualify for GP pricing, the official cost is close to what the script effectively costs you in time and risk.

gallery-dl and torrents are the alternatives the README points at

The difference between this script and gallery-dl is architectural. gallery-dl is a command-line downloader that runs outside the browser, so it is not subject to Blob limits, tab freezes or userscript manager permissions, and it can resume and retry without holding an archive in page memory. The README names it as the tool to try when a gallery exceeds what the browser can build. The trade-off is that you leave the browser, manage a separate program, and lose the one-click box on the gallery page.

Torrents are the other path, and the README is explicit about why they are better where they exist: a stable download, bonus content in some galleries (most often cosplay), GP and credit earned, and less load on E-Hentai's own servers. The script's advantage over a torrent is availability. It works on galleries that have no torrent at all, which is the case the README is implicitly built around.

Neither alternative shares the script's main selling point. gallery-dl and torrents do not care about GP, but neither gives you a zip assembled in the tab you are already looking at.

Licence, maintenance and what an upgrade costs you

The repository is GPL-3.0. That matters if you plan to fork or redistribute the script: derivative distributions carry the same licence obligations. It says nothing about whether running the script against E-Hentai is permitted by that site, which is a separate question the README answers with a warning rather than a permission.

The repository is not archived, and the last push was on 2026-05-12. The most recent release listed is v1.17.4 from 2015-09-17, described as the last version to support single-thread download, so releases and commits have diverged for a long time. The README itself concedes that parts of its compatibility information are "backed to around 10 years ago, which is not important," which is a fair description of a document that still carries notes about Firefox 56 and Opera 15.

Upgrade cost is low in the ordinary case: the script is a single userscript file, and userscript managers update from the install source. The real cost is environmental. Browser changes to extension permissions, such as the Manifest V3 handling on Chrome 133+, can break loading without any change to this repository, and the README tracks those requirements in footnotes rather than in code.

Editorial conclusion

Adopt it if you read E-Hentai occasionally, want a few hundred pages as a zip, and already run Tampermonkey or Violentmonkey. Skip it for large or old galleries where a torrent exists, for anything past roughly 500 MB per zip, and for Chrome 133+ users unwilling to enable Developer Mode and the Allow User Scripts permission. Before installing, check your manager version against the support table and confirm the gallery has no torrent.

Frequently asked questions

Does ccloli/E-Hentai-Downloader spend my GP or credits?

No. The README states the script does not download from the E-Hentai archive download page, so it does not spend GPs or credits. It fetches the gallery pages and their image URLs directly instead.

Which userscript manager do I need for ccloli/E-Hentai-Downloader?

It depends on your browser and version. The README's table lists GreaseMonkey, Tampermonkey and Violentmonkey with minimum versions per browser, and notes that Chrome 133+ needs Tampermonkey 5.0.0+ with Developer Mode enabled, while Violentmonkey is marked incompatible there.

Why does ccloli/E-Hentai-Downloader fail to make the zip file?

The README attributes this to memory and size limits: an out-of-memory message on Firefox or a file-not-found error on Chrome. It recommends keeping each zip under 500 MB using Pages Range and enabling File System on Chrome, and points to gallery-dl when a gallery exceeds the browser's 2 GB Blob or 4 GB zip limits.

Can I use ccloli/E-Hentai-Downloader on a phone?

It can work, but the README advises against it on mobile with limited RAM. The compatibility table lists Tampermonkey and Violentmonkey versions for Firefox for Android and Firefox Nightly for Android, with GreaseMonkey marked incompatible.

Official sources

  1. ccloli/E-Hentai-Downloader on GitHub
  2. Issues
  3. License: GPL-3.0
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/ccloli-e-hentai-downloader.svg)](https://hysenlabs.com/projects/ccloli-e-hentai-downloader)