{"id":17748136,"url":"https://github.com/toiletbril/dedoc","last_synced_at":"2025-03-15T00:30:55.697Z","repository":{"id":194299794,"uuid":"690496731","full_name":"toiletbril/dedoc","owner":"toiletbril","description":"terminal based viewer for DevDocs","archived":false,"fork":false,"pushed_at":"2024-08-28T19:36:42.000Z","size":219,"stargazers_count":52,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-09-29T07:38:45.875Z","etag":null,"topics":["cli","devdocs","docs"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/dedoc","language":"Rust","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/toiletbril.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2023-09-12T10:03:07.000Z","updated_at":"2024-09-28T05:03:16.000Z","dependencies_parsed_at":"2023-10-02T18:15:31.551Z","dependency_job_id":"b018a4e3-8da3-45a6-913a-90c5c160d80c","html_url":"https://github.com/toiletbril/dedoc","commit_stats":null,"previous_names":["toiletbril/dedoc"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toiletbril%2Fdedoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toiletbril%2Fdedoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toiletbril%2Fdedoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toiletbril%2Fdedoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toiletbril","download_url":"https://codeload.github.com/toiletbril/dedoc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243667646,"owners_count":20328032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["cli","devdocs","docs"],"created_at":"2024-10-26T10:01:23.907Z","updated_at":"2025-03-15T00:30:55.690Z","avatar_url":"https://github.com/toiletbril.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# dedoc\n\nSearch and view [DevDocs](https://devdocs.io/) offline from your terminal.\n**Without browser**. Without Python, Javascript or other inconveniences. Even\nwithout desktop environment.\n\nApp directory is `~/.dedoc`. Docsets go into `~/.dedoc/docsets`. You can also\ndefine `$DEDOC_HOME` environment variable to an existing directory of your\nchoice.\n\nPages are displayed as markdown documents, and can be piped to `less`,\n[`glow`](https://github.com/charmbracelet/glow) if you're fancy, or any other\npager or markdown reader.\n\nIf you have Rust, the preferred way to install `dedoc` is by running:\n```console\n$ cargo install dedoc\n```\n\nAlternatively, precompiled `x86_64` binaries for Windows and Linux are\navailable in [releases](https://github.com/toiletbril/dedoc/releases).\n\n## Usage\n\nRemember that running anything with `--help` prints a more detailed usage:\n ```console\n $ dedoc [subcommand] --help\n ```\n\nTo start using `dedoc` and fetch all latest available docsets, first run:\n```console\n$ dedoc fetch\nFetching `https://devdocs.io/docs.json`...\nWriting `/home/user/.dedoc/docs.json`...\nFetching has successfully finished.\n```\n\nYou can use `-f` flag to overwrite the fetched document if you encounter any\nissues.\n\n To see available docsets, run:\n```console\n$ dedoc ls\nangular, ansible, apache_http_server, astro, async, ...\n```\n\nWhich will list all docsets available to download from file which you\npreviously fetched. If you need version-specific docs, like `vue~3`/`~2`, use\n`-a` flag, which will list *everything*.\n\nUsing `-l` flag will show only local docsets, and `-n` will print each docset\non a separate line.\n\nDownload the documentation:\n```console\n$ dedoc download rust\nDownloading `rust`...\nReceived 46313067 bytes, file 1 of 2...\nReceived 3319078 bytes, file 2 of 2...\nExtracting to `/home/user/.dedoc/docsets/rust`...\nUnpacked 1899 files...\nInstall has successfully finished.\n```\n\nThis will make the documentation available locally as a bunch of HTML pages.\n\nYou can use `-f` flag here too to forcefully overwrite the documentation.\n\nTo search, for instance, for `BufReader` from `rust`, run:\n```console\n$ dedoc search rust bufreader\nSearching for `bufreader`...\nExact matches in `rust`:\n   1  std/io/struct.bufreader\n         2  #method.borrow\n         3  #method.borrow_mut\n         4  #method.buffer\n         5  #method.by_ref\n         ...\n```\n\nYou will get search results which are pages that match your query.\n\nResults that start with `#` denote fragments. Opening them will result in the\noutput of only that specific fragment. Likewise, opening a page will show the\nentire page. If you want to forcefully print the entire page instead of only a\nfragment, use `-f` flag.\n\nFor a more detailed search, use the `-p` flag. It makes search behave similarly\nto the `grep` command, and will look within all files, find all matches, and\ndisplay them with some context around the found section.\n\nUse `-i` to perform case-insensitive search, and `-w` to search for the whole\nsentence.\n\nFinally, to see the page, you can run `open` with the path with optional\nfragment:\n```console\n$ dedoc open rust \"std/io/struct.bufreader#method.borrow\"\n...\nfn borrow(\u0026self) -\u003e \u0026T\nImmutably borrows from an owned value. Read more\nsource\n...\n```\n\nUsing `-h` with `open` makes `dedoc` interpret supplied arguments as a path to\nHTML file and behave like a HTML to markdown transpiler. To make output wider or\nnarrower, you can use `-c` flag with the number of columns.\n\nInstead of typing out the whole path, you can conveniently append `-o` flag the\nyour previous `search` command, which will open n-th matched page or fragment:\n```console\n$ dedoc search rust bufreader -o 2\n```\n\nThis will be as fast as `open`, due to search caching. `-c` flag here works the\nsame way as in `open`.\n\nYou would probably like to forcefully enable colors for non-terminals with `-c`,\nuse `ss` instead of `search` and pipe output to a pager or markdown reader, like\n`less` with `-r` to reinterpret colors, turning the final command into:\n```console\n$ dedoc -c ss rust bufreader -o 2 | less -r\n```\n\nHappy coding!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoiletbril%2Fdedoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoiletbril%2Fdedoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoiletbril%2Fdedoc/lists"}