{"id":23749505,"url":"https://github.com/wasi-master/pypi-command-line","last_synced_at":"2025-09-04T22:32:11.702Z","repository":{"id":37474881,"uuid":"413878399","full_name":"wasi-master/pypi-command-line","owner":"wasi-master","description":"A powerful, colorful, beautiful command-line-interface for pypi.org","archived":false,"fork":false,"pushed_at":"2023-10-03T10:08:47.000Z","size":24038,"stargazers_count":50,"open_issues_count":4,"forks_count":7,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-07-03T11:11:33.226Z","etag":null,"topics":["cli","command-line","command-line-interface","description","markdown","pypa","pypi","pypi-cli","pypi-command-line","pypi-command-line-interface","pypi-package","pypi-packages","python","python3","rich","searching"],"latest_commit_sha":null,"homepage":"https://wasi-master.github.io/pypi-command-line/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wasi-master.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-10-05T15:38:03.000Z","updated_at":"2025-06-04T23:59:58.000Z","dependencies_parsed_at":"2023-10-03T17:27:58.806Z","dependency_job_id":null,"html_url":"https://github.com/wasi-master/pypi-command-line","commit_stats":{"total_commits":282,"total_committers":6,"mean_commits":47.0,"dds":0.06028368794326244,"last_synced_commit":"02a8b58f5fc2c523e8fa93556497a58bd602b373"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wasi-master/pypi-command-line","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasi-master%2Fpypi-command-line","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasi-master%2Fpypi-command-line/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasi-master%2Fpypi-command-line/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasi-master%2Fpypi-command-line/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wasi-master","download_url":"https://codeload.github.com/wasi-master/pypi-command-line/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasi-master%2Fpypi-command-line/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273684696,"owners_count":25149717,"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","status":"online","status_checked_at":"2025-09-04T02:00:08.968Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cli","command-line","command-line-interface","description","markdown","pypa","pypi","pypi-cli","pypi-command-line","pypi-command-line-interface","pypi-package","pypi-packages","python","python3","rich","searching"],"created_at":"2024-12-31T15:20:26.746Z","updated_at":"2025-09-04T22:32:06.227Z","avatar_url":"https://github.com/wasi-master.png","language":"Python","funding_links":[],"categories":["\u003ca name=\"package-manager\"\u003e\u003c/a\u003ePackage managers"],"sub_categories":[],"readme":"# pypi-command-line\n\n`pypi-command-line` is a **colorful**, **powerful**, and **beautiful** command line interface for [pypi.org](https://pypi.org \"The Python Package Index (PyPI) is a repository of software for the Python programming language.\") that is actively maintained\n\nDetailed Documentation available at \u003chttps://wasi-master.github.io/pypi-command-line/\u003e\n\n## Features\n\n- 🚀 Extremely intuitive and easy to use.\n- 🌟 Beautiful UI with pleasant colors *everywhere*.\n- 😁 Emojis in responses and errors.\n- 📰 Great Markdown and reStructuredText support for viewing project descriptions.\n- 😎 Many features (There are optional parameters for extra information too!).\n  - See in-depth information about a package including it's download count and github repo stats.\n  - See beautifully rendered markdown/rst/plain text description of a package\n  - Search for packages with the same information as pypi and even filter them.\n  - Search for packages with regex, for example using `flask-.+` will show all flask extensions.\n  - Browse for a package's URLs and open any of those URLs inside a browser with a beautiful colored link selection menu\n  - See all the releases of a package, along with when they were made and their size.\n  - See New projects and new releases [just like PyPI](https://pypi.org#pypi-trending-packages).\n  - See top 100 of the largest packages [just like PyPI](https://pypi.org/stats/).\n  - Many more... (\n    command list includes\n      [`browse`](https://wasi-master.github.io/pypi-command-line/usage/#browse),\n      [`information`](https://wasi-master.github.io/pypi-command-line/usage/#information),\n      [`description`](https://wasi-master.github.io/pypi-command-line/usage/#description),\n      [`search`](https://wasi-master.github.io/pypi-command-line/usage/#search),\n      [`wheels`](https://wasi-master.github.io/pypi-command-line/usage/#wheels),\n      [`releases`](https://wasi-master.github.io/pypi-command-line/usage/#releases),\n      [`largest-files`](https://wasi-master.github.io/pypi-command-line/usage/#largest-files),\n      [`regex-search`](https://wasi-master.github.io/pypi-command-line/usage/#regex-search),\n      [`version`](https://wasi-master.github.io/pypi-command-line/usage/#version),\n      [`cache-info`](https://wasi-master.github.io/pypi-command-line/usage/#cache-info),\n      [`cache-refresh`](https://wasi-master.github.io/pypi-command-line/usage/#cache-refresh),\n      [`cache-clear`](https://wasi-master.github.io/pypi-command-line/usage/#cache-clear),\n      [`new-packages`](https://wasi-master.github.io/pypi-command-line/usage/#new-packages),\n      [`new-releases`](https://wasi-master.github.io/pypi-command-line/usage/#new-releases),\n      [`read-the-docs`](https://wasi-master.github.io/pypi-command-line/usage/#read-the-docs)\n    )\n- 💻 Cross-platform.\n- 🤯 Open source.\n- 📚 Extensive documentation.\n\n## Info\n\n\u003cdetails open\u003e\n\u003csummary\u003eHide Info\u003c/summary\u003e\n\n### Download Count\n\nI've included both [PePy](https://pepy.tech/) and [PyPIStats](https://pypistats.org/) since PyPIStats by default does not include mirrors in it's count\u003csup\u003e[1](https://pypistats.org/faqs#why-are-the-cumulative-download-counts-different-from-the-sum-of)\u003c/sup\u003e. Also see \u003chttps://github.com/psincraian/pepy/issues/351\u003e\n\n| Period | From [PePy](https://pepy.tech/project/pypi-command-line)                                                                                                                                             | From [PyPiStats](https://pypistats.org/packages/pypi-command-line)                                                                                                               |\n| ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Day    |                                                                                                                                                                                                     | [![Downloads yesterday](https://img.shields.io/pypi/dd/pypi-command-line?label=Day\u0026labelColor=black\u0026color=orange)](https://pypistats.org/packages/pypi-command-line)             |\n| Week   | [![Downloads](https://static.pepy.tech/personalized-badge/pypi-command-line?period=week\u0026units=none\u0026left_color=black\u0026right_color=blue\u0026left_text=Week)](https://pepy.tech/project/pypi-command-line)   | [![Downloads in the last 7 days](https://img.shields.io/pypi/dw/pypi-command-line?label=Week\u0026labelColor=black\u0026color=orange)](https://pypistats.org/packages/pypi-command-line)   |\n| Month  | [![Downloads](https://static.pepy.tech/personalized-badge/pypi-command-line?period=month\u0026units=none\u0026left_color=black\u0026right_color=blue\u0026left_text=Month)](https://pepy.tech/project/pypi-command-line) | [![Downloads in the last 30 days](https://img.shields.io/pypi/dm/pypi-command-line?label=Month\u0026labelColor=black\u0026color=orange)](https://pypistats.org/packages/pypi-command-line) |\n| Total  | [![Downloads](https://static.pepy.tech/personalized-badge/pypi-command-line?period=total\u0026units=none\u0026left_color=black\u0026right_color=blue\u0026left_text=Total)](https://pepy.tech/project/pypi-command-line) |\n\n### Meta\n\n| Title                     | Badge                                                                                                                                                                                                                                                            |\n| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Version                   | [![Version](https://img.shields.io/pypi/v/pypi-command-line?label=pypi%20version\u0026style=flat-square\u0026logo=pypi\u0026logoColor=white)](https://pypi.org/project/pypi-command-line/)                                                                                      |\n| Wheel availability        | [![PyPI Wheel availability](https://img.shields.io/pypi/wheel/pypi-command-line?label=pypi%20wheel%20availabile%3F\u0026style=flat-square\u0026logo=pypi\u0026logoColor=white)](https://pypi.org/project/pypi-command-line/#files)                                              |\n| Supported python versions | [![Supported python versions](https://img.shields.io/pypi/pyversions/pypi-command-line?label=supported%20python%20versions\u0026style=flat-square\u0026logo=python\u0026logoColor=white)](https://pypi.org/project/pypi-command-line/#:~:text=requires%3A%20python%20%3E%3D3.6) |\n| Python Implementation     | [![Python Implementation](https://img.shields.io/pypi/implementation/pypi-command-line?label=python%20implementation\u0026style=flat-square\u0026logo=python\u0026logoColor=white)](https://pypi.org/project/pypi-command-line/#:~:text=programming%20language)                 |\n\n### GitHub\n\n| Title                   | Badge                                                                                                                                                                                                                                  |\n| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Number of issues open   | [![Number of issues open](https://img.shields.io/github/issues/wasi-master/pypi-command-line?style=flat-square\u0026logo=github\u0026logoColor=white\u0026label=issues%20open)](https://github.com/wasi-master/pypi-command-line/issues)              |\n| Number of issues closed | [![Number of issues closed](https://img.shields.io/github/issues-closed/wasi-master/pypi-command-line?label=issues%20closed\u0026style=flat-square\u0026logo=github\u0026logoColor=white)](https://github.com/wasi-master/pypi-command-line/issues?q=is%3Aissue++is%3Aclosed+)                                                             |\n| Number of pull requests | [![Number of pull requests](https://img.shields.io/github/issues-pr-closed/wasi-master/pypi-command-line?style=flat-square\u0026logo=github\u0026logoColor=white\u0026label=pull%20requests)](https://github.com/wasi-master/pypi-command-line/pulls) |\n| Number of stars         | [![Number of stars on GitHub](https://img.shields.io/github/stars/wasi-master/pypi-command-line?style=flat-square\u0026logo=github\u0026logoColor=white)](https://github.com/wasi-master/pypi-command-line/stargazers)                           |\n\n### Misc\n\n| Title                | Badge                                                                                                                                                                                                                                                                                         |\n| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Documentation status | [![Documentation status](https://img.shields.io/website?down_color=red\u0026down_message=not%20working\u0026label=docs\u0026logo=github\u0026style=flat-square\u0026up_color=blue\u0026up_message=working\u0026url=https%3A%2F%2Fwasi-master.github.io%2Fpypi-command-line%2F)](https://wasi-master.github.io/pypi-command-line) |\n| Lines of code        | [![Lines of code](https://img.shields.io/tokei/lines/github/wasi-master/pypi-command-line?style=flat-square\u0026logo=python\u0026logoColor=white)](https://github.com/wasi-master/pypi-command-line/)                                                                                                  |\n\n\u003c/details\u003e\n\n## Screenshots\n\n\u003cdetails open\u003e\n\u003csummary\u003eClick to hide screenshots\u003c/summary\u003e\n\nCommand name and parameter autocompletion\n![Autocomplete](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/autocomplete%20example.gif \"Autocomplete\")\nSmart error handling\n![Error Handling](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/error%20handling.gif \"Error Handling\")\nAuto command aliases\n![Smart Command Aliasing](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/smart_alias.png \"Smart Command Aliasing\")\nSearch feature that gives the same results as on PyPI\n![Search for a package using PyPI](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20search.gif \"Search for a package using PyPI\")\nSee detailed information about a project\n![See project information](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20info.gif \"See project information\")\nView the project description right in your terminal with rich Markdown and reStructuredText formatting\n![Get description from PyPI](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20desc.gif \"Get description from PyPI\")\nView the project readme from github\n![Get readme content from GitHub](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20desc%20github.gif \"Get readme content from GitHub\")\nSearch for packages using regular expressions\n![Search for packages using regex](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20rsearch.gif \"Search for packages using regex\")\nOpen the package's URLs gotten from PyPI\n![Browse for URLs](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20browse%20aligned.gif \"Browse for URLs\")\nSee the project information with classifiers\n![See project information with classifiers](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20info%20with%20classifiers.gif \"See !project information with classifiers\")\nSee the all time largest projects in PyPI\n![See all time largest projects in PyPI](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20largest-files.gif \"See all time largest !projects in PyPI\")\nInstall autocompletion for the current shell\n![Install Completion](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20--install-completion.gif \"Install Completion\")\nSee the source code for the autocompletion\n![Show Completion](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20--show-completion.gif \"Show Completion\")\nSee a specific page of the search results\n![Specify a page to search to](https://raw.githubusercontent.com/wasi-master/pypi-command-line/main/images/pypi%20search%20with%20page.gif \"Specify a page to search to\")\n\n\u003c/details\u003e\n\n## Installation\n\n- Installing from PyPI (recommended).\n\n  ```sh\n  pip install pypi-command-line\n  ```\n\n  If you want to also install [speed dependencies](https://wasi-master.github.io/pypi-command-line/notes#speedups)\n\n  ```sh\n  pip install \"pypi-command-line[speedups]\"\n  ```\n\n- Installing from source.\n\n  ```sh\n  pip install git+https://github.com/wasi-master/pypi-command-line.git\n  ```\n\n  If you want to also install [speed dependencies](https://wasi-master.github.io/pypi-command-line/notes#speedups)\n\n  ```sh\n  pip install \"pypi-command-line[speedups] @ git+https://github.com/wasi-master/pypi-command-line.git\"\n  ```\n\n## Usage\n\nTo see all the available commands use:\n\n```sh\npypi --help\n```\n\nFor more information on a certain command use `pypi \u003ccommand_name\u003e --help`. For example,\n\n```sh\npypi search --help\n```\n\nFor a full guide see \u003chttps://wasi-master.github.io/pypi-command-line/usage\u003e.\n\n## Alternatives\n\n### [pypi-cli](https://pypi.org/project/pypi-cli/ \"pypi-cli\")\n\nNow this probably was the best option before `pypi-command-line` came out and it does have some flaws. The `information` command of pypi-cli is pretty minimal, there's no way of seeing the github information, The download count doesn't work properly, the long descriptions aren't formatted at all with pypi-cli. pypi-cli uses the xml-rpc\u003csup\u003e[\u003ca title=\"XML-RPC is a remote procedure call (RPC) protocol which uses XML to encode its calls and HTTP as a transport mechanism.\" href=\"https://en.wikipedia.org/wiki/XML-RPC\" target=\"_blank\"\u003e?\u003c/a\u003e]\u003c/sup\u003e API that is discontinued So the search feature doesn't work anymore, . The stat command is broken and is badly formatted for screens that are not ultra wide. And the project is unmaintained and archived\n\n**TL;DR** The `stat` and `search` commands don't work anymore, the information command kinda works but the download count doesn't work, can't see github information, descriptions are raw.\n\n### [pypi-client](https://pypi.org/project/pypi-client/ \"pypi-client\")\n\nSo this can just search for packages on pypi and that's it. Now don't you think that this is inherently bad as per se. So I tried it out immediately and it just got stuck loading the packages, pypi-client gets names of all the packages that exist pypi\u003csup\u003e\u003ca title=Reference href=\"https://github.com/abahdanovich/pypi-client#:~:text=fetches%20all%20package%20names%20from%20pypi\" target=\"_blank\"\u003e‾\u003c/a\u003e\u003c/sup\u003e which took like 4 mins, then I assume it downloads the github stars data?\u003csup\u003e\u003ca title=Reference href=\"https://github.com/abahdanovich/pypi-client#:~:text=downloads%20github%20stars\" target=\"_blank\"\u003e‾\u003c/a\u003e\u003c/sup\u003e Which takes like another 3 mins and then It just asked me to authorize with github… like why does pypi-client even need authorization from me since github has a public api. And then it showed [this](https://i.imgur.com/D0VJhmZ.png \"Demo of the program that has been badly formatted\") which isn't really unreadable just badly formatted for screens that are not ultra wide. by changing the font size a bit I could make it look like [this](https://i.imgur.com/usU2AnJ.jpeg \"Demo of the program after lowering the font size\") which still isn't bad just a bit convoluted. And even at the end of the day the results are manually searched through therefore different from pypi\u003csup\u003e\u003ca title=Example href=\"https://i.imgur.com/2AuCKuX.jpg\" target=\"_blank\"\u003e‾\u003c/a\u003e\u003c/sup\u003e\n\n**TL;DR:**\nTakes too long (≈7 mins), Needs github authorization, badly formatted for non ultra wide monitors, searches manually so results are different compared to pypi\n\n### [yolk](https://pypi.org/project/yolk/ \"yolk\")\n\nDiscontinued 9 years ago, only supports python 2. Uses flags instead of subcommands for everything.\n\n**TL;DR:**\nIs this really necessary?\n\n### [qypi](https://pypi.org/project/qypi/ \"qypi\")\n\nSo, this library is most likely the best alternative for pypi-command-line. But the output is in json, uses the xml-rpc api for search which is discontinued, the readme command doesn't work for me, the list command doesn't have a progressbar\n\n**TL;DR:**\nOutput is only in json, without color. The search command doesn't work anymore. Has no progressbar for long running tasks\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwasi-master%2Fpypi-command-line","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwasi-master%2Fpypi-command-line","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwasi-master%2Fpypi-command-line/lists"}