{"id":15063357,"url":"https://github.com/artbycrunk/hyper-prompt","last_synced_at":"2025-04-10T10:51:18.092Z","repository":{"id":62569961,"uuid":"183628539","full_name":"artbycrunk/hyper-prompt","owner":"artbycrunk","description":"Highly Customize-able prompt for your shell","archived":false,"fork":false,"pushed_at":"2020-08-16T17:38:34.000Z","size":228,"stargazers_count":6,"open_issues_count":4,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-24T09:46:49.800Z","etag":null,"topics":["bash","developer-tools","hacktoberfest","prompts","python3","shell","zsh"],"latest_commit_sha":null,"homepage":"","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/artbycrunk.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-26T12:55:35.000Z","updated_at":"2025-01-07T10:33:24.000Z","dependencies_parsed_at":"2022-11-03T17:15:37.713Z","dependency_job_id":null,"html_url":"https://github.com/artbycrunk/hyper-prompt","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artbycrunk%2Fhyper-prompt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artbycrunk%2Fhyper-prompt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artbycrunk%2Fhyper-prompt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artbycrunk%2Fhyper-prompt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/artbycrunk","download_url":"https://codeload.github.com/artbycrunk/hyper-prompt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247947858,"owners_count":21023066,"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":["bash","developer-tools","hacktoberfest","prompts","python3","shell","zsh"],"created_at":"2024-09-24T23:55:35.572Z","updated_at":"2025-04-10T10:51:18.074Z","avatar_url":"https://github.com/artbycrunk.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hyper-prompt\r\n\r\n[![image](https://img.shields.io/pypi/v/hyper-prompt.svg)](https://pypi.org/project/hyper-prompt/)\r\n[![image](https://img.shields.io/pypi/pyversions/hyper-prompt.svg)](https://pypi.org/project/hyper-prompt/)\r\n[![GitHub license](https://img.shields.io/github/license/artbycrunk/hyper-prompt)](https://github.com/artbycrunk/hyper-prompt/blob/master/LICENSE)\r\n\r\n[![Documentation Status](https://readthedocs.org/projects/hyper-prompt/badge/?version=latest)](https://hyper-prompt.readthedocs.io/en/latest/?badge=latest)\r\n[![GitHub Actions (Python package)](https://github.com/artbycrunk/hyper-prompt/workflows/Tests/badge.svg)](https://github.com/artbycrunk/hyper-prompt)\r\n\r\n[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/artbycrunk/hyper-prompt.svg)](https://isitmaintained.com/project/artbycrunk/hyper-prompt \"Average time to resolve an issue\")\r\n[![Percentage of issues still open](https://isitmaintained.com/badge/open/artbycrunk/hyper-prompt.svg)](https://isitmaintained.com/project/artbycrunk/hyper-prompt \"Percentage of issues still open\")\r\n\r\n[![](https://img.shields.io/badge/TWITTER-%40artbycrunk-blue.svg?logo=twitter\u0026style=flat)](https://twitter.com/artbycrunk)\r\n[![](https://img.shields.io/badge/gitter-join_chat-1dce73.svg?style=flat\u0026logo=gitter-white)](https://gitter.im/hyper-prompt/hyper-prompt)\r\n\r\n\r\nA Highly Customize-able prompt for your shell\r\n\r\n![header](images/header.gif)\r\n\r\n## Requirements\r\n\r\n- Python3\r\n- Powerline Fonts : https://github.com/powerline/fonts\r\n\r\n## Getting Started\r\n\r\n* from pip\r\n```bash \r\npip install hyper-prompt\r\n```\r\n\r\n* from github\r\n```\r\ngit clone https://github.com/artbycrunk/hyper-prompt\r\ncd hyper-prompt\r\npython setup.py install\r\n```\r\n\r\n## Configure for your desired shell\r\n\r\n### * Bash\r\n\r\nAdd the following to your `.bashrc` file:\r\n\r\n```bash\r\n# enable hyper-prompt if executable exists\r\nif hash hyper-prompt 2\u003e/dev/null; then\r\n  function _update_ps1() {\r\n      PS1=$(hyper-prompt --shell bash $?)\r\n  }\r\n\r\n  if [[ $TERM != linux \u0026\u0026 ! $PROMPT_COMMAND =~ _update_ps1 ]]; then\r\n      PROMPT_COMMAND=\"_update_ps1; $PROMPT_COMMAND\"\r\n  fi\r\nfi\r\n```\r\n\r\n### * Zsh\r\n\r\nAdd the following to your `.zshrc`:\r\n\r\n```zsh\r\nfunction prompt_precmd() {\r\n    PS1=\"$(hyper-prompt --shell zsh $?)\"\r\n}\r\n\r\nfunction add_prompt_precmd() {\r\n  for s in \"${precmd_fn[@]}\"; do\r\n    if [ \"$s\" = \"prompt_precmd\" ]; then\r\n      return\r\n    fi\r\n  done\r\n  precmd_fn+=(prompt_precmd)\r\n}\r\n\r\nif [ \"$TERM\" != \"linux\" ]; then\r\n    add_prompt_precmd\r\nfi\r\n```\r\n\r\n### * Fish\r\n\r\nAdd the following to your `~/.config/fish/config.fish`:\r\n\r\n```shell\r\nfunction fish_prompt\r\n    hyper-prompt --shell bare $status\r\nend\r\n```\r\n\r\n### * tcsh\r\n\r\nAdd the following to your `.tcshrc`:\r\n\r\n```bash\r\nalias precmd 'set prompt=\"`hyper-prompt --shell tcsh $?`\"'\r\n```\r\n\r\n## Customization Options\r\n\r\n### Config File\r\n\r\nHyper prompt will lookup multiple locations for a config file for options on how to display your prompt..\r\n\r\nIt will first look for a `hyper_prompt.json` in your current project/folder, if it doesn't exists look for `$HOME/.hyper_prompt.json` else finally look for `$HOME/.config/hyper_prompt/config.json`\r\n\r\nUse `~/.config/hyper-prompt/config.json` as a config file for customizations.\r\n\r\nExample of a default config\r\n```json\r\n\"theme\": \"default\",\r\n\"mode\":\"patched\",\r\n\"segments\": [\r\n    \"username\",\r\n    {\r\n        \"type\": \"virtual\",\r\n        // a user built segment which is discoverable via the python path\r\n        \"module\": \"hyper_prompt.segments.virtual\"\r\n    }\r\n]\r\n```\r\n\r\n### Segments\r\n\r\nSegments are the building blocks of hyper-prompt\r\n\r\nYou can mix and match different segments to build your prompt.\r\n\r\n\r\n## Issues, feature requests, and contributions\r\n\r\n* If you come across a problem with the extension, please [file an issue](https://github.com/artbycrunk/hyper-prompt/issues/new)\r\n* Contributions are always welcome!\r\n* Any and all feedback is appreciated and welcome!\r\n  - If someone has already [filed an issue](https://github.com/artbycrunk/hyper-prompt/issues) that encompasses your feedback, please leave a 👍/👎 reaction on the issue\r\n  - Otherwise please file a new issue\r\n\r\n## Release Notes\r\n\r\nSee [CHANGELOG.md](https://github.com/artbycrunk/hyper-prompt/blob/master/CHANGELOG.md)\r\n\r\nSee [Recent Releases](https://github.com/artbycrunk/hyper-prompt/releases)\r\n\r\n**Enjoy!**\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartbycrunk%2Fhyper-prompt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fartbycrunk%2Fhyper-prompt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartbycrunk%2Fhyper-prompt/lists"}