{"id":13587824,"url":"https://github.com/dougy147/scitopdf","last_synced_at":"2026-02-23T11:54:14.756Z","repository":{"id":37004713,"uuid":"231919177","full_name":"dougy147/scitopdf","owner":"dougy147","description":"bash script to quickly fetch, download and open scientific papers from Sci-Hub's database. ","archived":false,"fork":false,"pushed_at":"2024-05-15T10:00:28.000Z","size":4269,"stargazers_count":138,"open_issues_count":2,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-05-16T00:19:24.114Z","etag":null,"topics":["articles","pdf","sci-hub","science"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dougy147.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"dougy147"}},"created_at":"2020-01-05T13:10:36.000Z","updated_at":"2024-08-01T16:33:52.027Z","dependencies_parsed_at":"2024-01-12T04:44:42.073Z","dependency_job_id":"15a65830-3b77-4f6c-bfd7-bc5ffed82b2f","html_url":"https://github.com/dougy147/scitopdf","commit_stats":{"total_commits":151,"total_committers":4,"mean_commits":37.75,"dds":0.05960264900662249,"last_synced_commit":"8d4d2b88ba79d62136b798d90e6aea896c5a309f"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/dougy147/scitopdf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougy147%2Fscitopdf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougy147%2Fscitopdf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougy147%2Fscitopdf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougy147%2Fscitopdf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dougy147","download_url":"https://codeload.github.com/dougy147/scitopdf/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougy147%2Fscitopdf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29741924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-23T07:44:07.782Z","status":"ssl_error","status_checked_at":"2026-02-23T07:44:07.432Z","response_time":90,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["articles","pdf","sci-hub","science"],"created_at":"2024-08-01T15:06:22.710Z","updated_at":"2026-02-23T11:54:14.741Z","avatar_url":"https://github.com/dougy147.png","language":"Shell","funding_links":["https://ko-fi.com/dougy147"],"categories":["Shell"],"sub_categories":[],"readme":"`scitopdf` is a minimalist program for avid readers of scientific papers (that... I'm not).\n\nFeed it with whatever infos about a paper, count up to 5, and it will **pop** before your eyes 👀.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/dougy147/scitopdf/master/assets/example.gif\" width=\"80%\" /\u003e\n\u003c/p\u003e\n\n`scitopdf` quickly leverages Crossref search engine, Sci-Hub and 🆕Libgen databases.\n\nIt recognizes URL and DOI when given, else it will process any info about the paper to find it : (truncated) title || authors || journal || DOI || URL || year of publication || ...\n\n## Install\n\nIf you really care about your disk space, don't install ! And try it like this :\n\n```console\npaper=\"the paper you are looking for\"\ncurl https://raw.githubusercontent.com/dougy147/scitopdf/master/scitopdf | bash -s ${paper}\n```\n\nIf 12KB is no problem to you, push your floppy diskette in, and follow those lines :\n\n```console\ngit clone https://github.com/dougy147/scitopdf\ncd scitopdf\nsudo make install\n```\n\n### Also check your distro repos 👀\n\n- Arch Linux (AUR) : `yay -S scitopdf-git`\n\n- ROSA Linux (official repository) : `sudo dnf install scitopdf`\n\n## Adapt to your needs !\n\n\u003e Desired features for `scitopdf` are **{simplici-compatibili-flexibili}docious**.\n\u003e\n\u003e -- \u003ccite\u003eMary Poppins\u003c/cite\u003e\n\nThat goal is obviously not reached (too many OS 🤯, sad country restrictions 😥, coding skills deficit 📉...) but let's start somewhere!\n\n| Flag                       | Functionality                                                 |\n|----------------------------|---------------------------------------------------------------|\n| `-l`, `--list`             | Download references line by line from a bibliography file     |\n| `-D`, `--download-dir`     | Store papers in a specified directory                         |\n| `-u`, `--url`              | Manually set Sci-Hub address                                  |\n| `-p`, `--no-auto-open`     | Pass on auto-opening                                          |\n| `-q`, `--quiet`            | Quiet mode, no `echo` except for errors                       |\n| `-w`, `--wait`             | Wait X seconds between two requests (for `--list` mode only)  |\n| `-b`, `--break-after`      | Make a break every X paper search (for `--list` mode only)    |\n| `-d`, `--break-for`        | Break duration in seconds (for `--list` mode only)            |\n| `--dns`                    | Experimental. Set your DNS to fetch SH. Check the `man` page. |\n| `--ref`                    | Display BibTex references in terminal and copy to clipboard.  |\n| `--dmenu`                  | Display prompt with dmenu (more support and functions to come)|\n| `-h`, `--help`             | Print this help menu                                          |\n| `man scitopdf`             | Check the manual for more tweaks                              |\n\n- **Example** : `scitopdf -p \"protein measurement with the folin\" -q -D \"$HOME/science\"`\n\n## Some more details\n\n### Papers are stored\n\nPapers are automatically saved to `$XDG_DOWNLOAD_DIR/scitopdf` (or `~/Downloads/scitopdf` depending on your system). You can change that default directory (pre-install) from the script itself (`scitopdf`).\n\n### Be sure you can read\n\nFor auto-opening, `scitopdf` will do whatever it can to use your default PDF reader. But if it fails, don't forget to set a `READER` environment variable, or to install `zathura` (a minimalist and lightweight document viewer).\n\n### \"I want it all\"\n\nIf you're very hungry for papers, you can auto-download multiple ones. Just give `scitopdf` a list of references (contained in a .txt file, or whatever, **as long as references are listed line by line**).\n\nSo, paste a bibliography in `bib.txt`, and `scitopdf -l bib.txt` will process each line and download every paper it finds (no auto-opening).\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/dougy147/scitopdf/master/assets/example_bib_file.gif\" width=\"80%\" /\u003e\n\u003c/p\u003e\n\n### Don't waste time typing!\n\nGo even faster and make your own keyboard shortcut.\nMap your favorite keys combination (I use `Super+S`) to `scitopdf $(xclip -o)` (or any other clipboard tool).\nNow, just highlight any title, DOI or URL you come accross, press your keys, and you're all set for a read.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/dougy147/scitopdf/master/assets/example_keyboard_shortcut.gif\" width=\"80%\" /\u003e\n\u003c/p\u003e\n\nThat's full speed accessing your papers now. Close enough from speed of thought 👍. (why am I selling that dumb script so much?)\n\n### \"But I love typing...\"\n\nIf you're a typewriting kind of person and prefer it the old way, well, no judgment.\n`scitopdf` reveals itself pretty cool too in the terminal, or when combined with [`dmenu`](https://tools.suckless.org/dmenu/).\n\nMap this `search=$(printf \"\" | dmenu -p \"Scitopdf\") \u0026\u0026 scitopdf \"$search\"` to your favorite keys combo.\n\n### macOS compatibility\n\nmacOS runs a dinosaur version of bash. But `scitopdf` won't allow its users to be left behind. That's why its code is meant to stay retro-compatible. How kind from this little script 😎!\n\n## Instructions for the careless mind\n\nI must release myself of any responsibility in the way you will use this program.\nIndeed, its use might be unappropriate in your country.\n\nAs far as I understand (i.e. poorly), imperative programming is like stacking bricks on top of each other.\nIf there's nothing wrong stacking, climbing the pile might.\nSo, I'm only responsible for sharing a recipe one could find all the ingredients with any search engine.\n\nIllegality is not contained in that program. It can only be in its user's behavior.\nPlease use that script consciously, with and on your personal goods only.\n\n\n## Special thanks to contributors\n\n\u003ca href=\"https://github.com/Phundrak\"\u003e\n  \u003cimg src=\"https://avatars.githubusercontent.com/u/1893080?v=4\" width='50px'\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/mikhailnov\"\u003e\n  \u003cimg src=\"https://avatars.githubusercontent.com/u/15802528?v=4\" width='50px'\u003e\n\u003c/a\u003e\n\n\n## Feel free 😎\n\nIf scitopdf has been of any help to you, I'd be glad and thankful !\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/dougy147)\n\nBTC : `bc1q4cflj0e3hwcn5edut654je86upn37p37gut5yk`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdougy147%2Fscitopdf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdougy147%2Fscitopdf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdougy147%2Fscitopdf/lists"}