muse-dl
Version, currently 1.3.113 versions
- 1.3.1latestJun 4, 2021
- 1.3.0not indexedOct 31, 2023
- 1.2.2not indexedOct 31, 2023
- 1.2.1not indexedOct 31, 2023
- 1.2.0not indexedOct 31, 2023
- 1.1.2not indexedOct 31, 2023
- 1.1.1not indexedOct 31, 2023
- 1.1.0not indexedOct 31, 2023
- 1.0.1not indexedOct 31, 2023
- 1.0.0not indexedOct 31, 2023
- 1.3betanot indexedOct 31, 2023
- v.1.2.3not indexedOct 31, 2023
- v.1.2.3-1not indexedOct 31, 2023
github.com/captn3m0/muse-dl
Downloads and stitches ebooks from Project MUSE
Installation
# Add this to your shard.yml
dependencies:
muse-dl:
github: captn3m0/muse-dl
version: ~> 1.3.1Then run:
shards installshard.yml
- Crystal
- no constraint declared
- License
- MIT
- Author
- Nemo
- Target
muse-dlfrom src/muse-dl.cr
Dependencies
Runtime Dependencies
Development Dependencies
- webmock*github: manastech/webmock.cr, branch: masterdev
README
muse-dl

Download PDFs from Project MUSE and stitch them together into a single-file using pdftk.
:warning: WARNING :warning:
Any downloads you perform with this tool are for your own usage. I personally hate reading PDFs on a browser, this lets me read them much more easily offline. This is just for personal use.
Installation
Linux / Build
git clone https://github.com/captn3m0/muse-dl.git
cd muse-dl
shards install
shards build
./bin/muse-dl --help
Linux / Download
A linux x86_64 static build is available in the latest release: https://github.com/captn3m0/muse-dl/releases/latest. Save the file as muse-dl and remember to mark it as executable (chmod +x).
Docker
A docker image is available at captn3m0/muse-dl on Docker Hub. The working directory for the image is set as /data, so you'll need to mount your output-directory as /data for it to work. Sample invocations;
# Download the book, and put it in your Downloads directory
docker run -it /home/nemo/Downloads:/data captn3m0/muse-dl:edge https://muse.jhu.edu/book/875
# If you have a list.txt file in your Downloads directory, then you can run
docker run -it /home/nemo/Downloads:/data captn3m0/muse-dl:edge /data/list.txt
# If you want to keep the temporary files with your host, and not delete them
docker run -it /home/nemo/Downloads:/data /tmp:/musetmp captn3m0/muse-dl:edge --tmp-dir /musetmp --no-cleanup https://muse.jhu.edu/book/875
Replace edge with the latest version number if you'd like to run a tagged release.
Docker Images
The following images are available:
edge: Runmuse-dlagainst latest master.edge-static: Get the pre-built static-binary against latest master.v1.3.1: Runmuse-dlagainst the specific release.v1.3.1-static: Get the pre-built static binary against the specific release.
Requirements
Please ensure you have pdftk installed, unless you're running via docker.
Usage
Usage: muse-dl [--flags] [URL|INPUT_FILE]
URL: A link to a book on the Project MUSE website, eg https://muse.jhu.edu/book/875
INPUT_FILE: Path to a file containing a list of links
--no-cleanup Don't cleanup temporary files
--tmp-dir PATH Temporary Directory to use
--output FILE Output Filename
--no-bookmarks Don't add bookmarks in the PDF
--clobber Overwrite the output file, if it already exists.
--dont-strip-first-page Disables first page from being stripped. Use carefully
--cookie COOKIE Cookie-header
-h, --help Show this help
Sample Run
muse-dl https://muse.jhu.edu/book/875
Saved final output to Accommodating Revolutions- Virginia's Northern Neck in an Era of Transformations, 1760-1810.pdf
Alternatively, if you pass a input-file.txt (sample), you can pass it as the sole parameter.
muse-dl input.txt
And it will download all the links in that file.
License
Licensed under the MIT License. See LICENSE file for details.
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
1.3.1- Tagged
- Jun 4, 2021
- Commit
5fd0056d77cd- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/captn3m0/muse-dl
Metadata
- Created
- Aug 12, 2026
- Updated
- Nov 9, 2026
- Synced
- Nov 9, 2026
- Versions
- 13