{"id":20444878,"url":"https://github.com/timo-reymann/bash-tui-toolkit","last_synced_at":"2025-09-06T13:32:39.915Z","repository":{"id":65904660,"uuid":"601772441","full_name":"timo-reymann/bash-tui-toolkit","owner":"timo-reymann","description":"Toolkit to create simple Terminal UIs using plain bash builtins","archived":false,"fork":false,"pushed_at":"2024-10-05T22:05:32.000Z","size":182,"stargazers_count":48,"open_issues_count":1,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-12-20T05:08:55.616Z","etag":null,"topics":["bash","tui"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/timo-reymann.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-14T19:37:53.000Z","updated_at":"2024-12-09T15:59:08.000Z","dependencies_parsed_at":"2023-12-11T13:00:57.077Z","dependency_job_id":"ed8634ed-7976-4d66-b6a2-c7ec1a494990","html_url":"https://github.com/timo-reymann/bash-tui-toolkit","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timo-reymann%2Fbash-tui-toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timo-reymann%2Fbash-tui-toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timo-reymann%2Fbash-tui-toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timo-reymann%2Fbash-tui-toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timo-reymann","download_url":"https://codeload.github.com/timo-reymann/bash-tui-toolkit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232126168,"owners_count":18476190,"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","tui"],"created_at":"2024-11-15T10:09:33.983Z","updated_at":"2025-09-06T13:32:39.868Z","avatar_url":"https://github.com/timo-reymann.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Bash TUI Toolkit\n===\n[![LICENSE](https://img.shields.io/github/license/timo-reymann/gpg-key-creation-assistant)](https://github.com/timo-reymann/bash-tui-toolkit/blob/main/LICENSE)\n[![CircleCI](https://circleci.com/gh/timo-reymann/bash-tui-toolkit.svg?style=shield)](https://app.circleci.com/pipelines/github/timo-reymann/bash-tui-toolkit)\n[![GitHub Release](https://img.shields.io/github/v/tag/timo-reymann/bash-tui-toolkit?label=version)](https://github.com/timo-reymann/bash-tui-toolkit/releases)\n[![Renovate](https://img.shields.io/badge/renovate-enabled-green?logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNjkgMzY5Ij48Y2lyY2xlIGN4PSIxODkuOSIgY3k9IjE5MC4yIiByPSIxODQuNSIgZmlsbD0iI2ZmZTQyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTUgLTYpIi8+PHBhdGggZmlsbD0iIzhiYjViNSIgZD0iTTI1MSAyNTZsLTM4LTM4YTE3IDE3IDAgMDEwLTI0bDU2LTU2YzItMiAyLTYgMC03bC0yMC0yMWE1IDUgMCAwMC03IDBsLTEzIDEyLTktOCAxMy0xM2ExNyAxNyAwIDAxMjQgMGwyMSAyMWM3IDcgNyAxNyAwIDI0bC01NiA1N2E1IDUgMCAwMDAgN2wzOCAzOHoiLz48cGF0aCBmaWxsPSIjZDk1NjEyIiBkPSJNMzAwIDI4OGwtOCA4Yy00IDQtMTEgNC0xNiAwbC00Ni00NmMtNS01LTUtMTIgMC0xNmw4LThjNC00IDExLTQgMTUgMGw0NyA0N2M0IDQgNCAxMSAwIDE1eiIvPjxwYXRoIGZpbGw9IiMyNGJmYmUiIGQ9Ik04MSAxODVsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzI1YzRjMyIgZD0iTTIyMCAxMDBsMjMgMjNjNCA0IDQgMTEgMCAxNkwxNDIgMjQwYy00IDQtMTEgNC0xNSAwbC0yNC0yNGMtNC00LTQtMTEgMC0xNWwxMDEtMTAxYzUtNSAxMi01IDE2IDB6Ii8+PHBhdGggZmlsbD0iIzFkZGVkZCIgZD0iTTk5IDE2N2wxOC0xOCAxOCAxOC0xOCAxOHoiLz48cGF0aCBmaWxsPSIjMDBhZmIzIiBkPSJNMjMwIDExMGwxMyAxM2M0IDQgNCAxMSAwIDE2TDE0MiAyNDBjLTQgNC0xMSA0LTE1IDBsLTEzLTEzYzQgNCAxMSA0IDE1IDBsMTAxLTEwMWM1LTUgNS0xMSAwLTE2eiIvPjxwYXRoIGZpbGw9IiMyNGJmYmUiIGQ9Ik0xMTYgMTQ5bDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMxZGRlZGQiIGQ9Ik0xMzQgMTMxbDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMxYmNmY2UiIGQ9Ik0xNTIgMTEzbDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMyNGJmYmUiIGQ9Ik0xNzAgOTVsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzFiY2ZjZSIgZD0iTTYzIDE2N2wxOC0xOCAxOCAxOC0xOCAxOHpNOTggMTMxbDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMzNGVkZWIiIGQ9Ik0xMzQgOTVsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzFiY2ZjZSIgZD0iTTE1MyA3OGwxOC0xOCAxOCAxOC0xOCAxOHoiLz48cGF0aCBmaWxsPSIjMzRlZGViIiBkPSJNODAgMTEzbDE4LTE3IDE4IDE3LTE4IDE4ek0xMzUgNjBsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzk4ZWRlYiIgZD0iTTI3IDEzMWwxOC0xOCAxOCAxOC0xOCAxOHoiLz48cGF0aCBmaWxsPSIjYjUzZTAyIiBkPSJNMjg1IDI1OGw3IDdjNCA0IDQgMTEgMCAxNWwtOCA4Yy00IDQtMTEgNC0xNiAwbC02LTdjNCA1IDExIDUgMTUgMGw4LTdjNC01IDQtMTIgMC0xNnoiLz48cGF0aCBmaWxsPSIjOThlZGViIiBkPSJNODEgNzhsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzAwYTNhMiIgZD0iTTIzNSAxMTVsOCA4YzQgNCA0IDExIDAgMTZMMTQyIDI0MGMtNCA0LTExIDQtMTUgMGwtOS05YzUgNSAxMiA1IDE2IDBsMTAxLTEwMWM0LTQgNC0xMSAwLTE1eiIvPjxwYXRoIGZpbGw9IiMzOWQ5ZDgiIGQ9Ik0yMjggMTA4bC04LThjLTQtNS0xMS01LTE2IDBMMTAzIDIwMWMtNCA0LTQgMTEgMCAxNWw4IDhjLTQtNC00LTExIDAtMTVsMTAxLTEwMWM1LTQgMTItNCAxNiAweiIvPjxwYXRoIGZpbGw9IiNhMzM5MDQiIGQ9Ik0yOTEgMjY0bDggOGM0IDQgNCAxMSAwIDE2bC04IDdjLTQgNS0xMSA1LTE1IDBsLTktOGM1IDUgMTIgNSAxNiAwbDgtOGM0LTQgNC0xMSAwLTE1eiIvPjxwYXRoIGZpbGw9IiNlYjZlMmQiIGQ9Ik0yNjAgMjMzbC00LTRjLTYtNi0xNy02LTIzIDAtNyA3LTcgMTcgMCAyNGw0IDRjLTQtNS00LTExIDAtMTZsOC04YzQtNCAxMS00IDE1IDB6Ii8+PHBhdGggZmlsbD0iIzEzYWNiZCIgZD0iTTEzNCAyNDhjLTQgMC04LTItMTEtNWwtMjMtMjNhMTYgMTYgMCAwMTAtMjNMMjAxIDk2YTE2IDE2IDAgMDEyMiAwbDI0IDI0YzYgNiA2IDE2IDAgMjJMMTQ2IDI0M2MtMyAzLTcgNS0xMiA1em03OC0xNDdsLTQgMi0xMDEgMTAxYTYgNiAwIDAwMCA5bDIzIDIzYTYgNiAwIDAwOSAwbDEwMS0xMDFhNiA2IDAgMDAwLTlsLTI0LTIzLTQtMnoiLz48cGF0aCBmaWxsPSIjYmY0NDA0IiBkPSJNMjg0IDMwNGMtNCAwLTgtMS0xMS00bC00Ny00N2MtNi02LTYtMTYgMC0yMmw4LThjNi02IDE2LTYgMjIgMGw0NyA0NmM2IDcgNiAxNyAwIDIzbC04IDhjLTMgMy03IDQtMTEgNHptLTM5LTc2Yy0xIDAtMyAwLTQgMmwtOCA3Yy0yIDMtMiA3IDAgOWw0NyA0N2E2IDYgMCAwMDkgMGw3LThjMy0yIDMtNiAwLTlsLTQ2LTQ2Yy0yLTItMy0yLTUtMnoiLz48L3N2Zz4=)](https://renovatebot.com)\n[![pre-commit](https://img.shields.io/badge/%E2%9A%93%20%20pre--commit-enabled-success)](https://pre-commit.com/)\n[![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/timo-reymann/bash-tui-toolkit/total)](https://github.com/timo-reymann/bash-tui-toolkit/releases)\n\n\u003cp align=\"center\"\u003e\n\t\u003cimg width=\"300\" src=\"./.github/images/logo.png\"\u003e\n    \u003cbr /\u003e\n    Toolkit to create interactive and shiny terminal UIs using plain bash builtins\n\u003c/p\u003e\n\n## Features\n\n- clean and standardized API\n- provide a simple and clear default set of elements to use creating an interactive terminal UI\n- clean and minimalistic design\n- zero dependencies to be installed\n- parts can be used modular\n\n## Requirements\n\n- [bash 3+](https://www.gnu.org/software/bash/)\n\n## Installation\n\n### Download and include in your scripts\n\n1. Download the bundle (entire lib) or single compoennt\n   from [releases](https://github.com/timo-reymann/bash-tui-toolkit/releases)\n2. Source the bundle in your script or embed, e.g.\n   ```bash\n   source ./lib/bundle.bash\n   ```\n   or simply copy it into your script.\n\n### Source directly from release\n\n\u003e Note that this is not a recommended approach and only intended for quick testing or trying out another version.\n\n1. Choose the bundle in the version you want to use from the available releases in the [docs](https://bash-tui-toolkit.timo-reymann.de/).\n2. Source it to your script on runtime:\n   1. Using `wget`\n      ```bash\n      source \u003c(wget -qO- https://bash-tui-toolkit.timo-reymann.de/latest/bundle.bash)\n      ```\n   2. Using `curl`\n      ```bash\n      source \u003c(curl -qsS https://bash-tui-toolkit.timo-reymann.de/latest/bundle.bash)\n      ```\n\n## Usage\n\nFor a list of available modules and their documentation please check the [docs](https://bash-tui-toolkit.timo-reymann.de/).\n\nFor a complete playground demo check [test.sh](./test.sh).\n\n## Motivation\n\nProviding a clean bash UI sometimes becomes a mess and interactivity is hard to achieve especially when it should be\nportable.\n\nThe target is to provide a simple-to-use toolkit that can be dropped into any bash script and is compatible no matter\nthe target system.\n\n## Documentation\n\n- [GitHub Pages](https://bash-tui-toolkit.timo-reymann.de/) - Versioned releases, documentation and compability matrix\n- [Modules](./docs/modules) - Modules available and their usage\n- [Compability table](./docs/Compatibility) - Known combinations of OS/Bash Version/Terminal emulators that work guaranteed\n\n## Contributing\n\nI love your input! I want to make contributing to this project as easy and transparent as possible, whether it's:\n\n- Reporting a bug\n- Discussing the current state of the configuration\n- Submitting a fix\n- Proposing new features\n- Becoming a maintainer\n\nTo get started please read the [Contribution Guidelines](./CONTRIBUTING.md).\n\n## Development\n\n### Requirements\n\n- [GNU make](https://www.gnu.org/software/make/)\n- [Docker](https://docs.docker.com/get-docker/)\n- [pre-commit](https://pre-commit.com/)\n\n### Build\n\n```\nmake build\n```\n\n### Update documentation\n\nTo update the module documentation you just need to run\n\n```sh\nmake generate-docs\n```\n\nThis builds the documentation inside a docker container and updates the\nrepo locally. Afterwards just commit the docs with your code changes\n\n\n## Credits\n\n- Logo\n  - Bash logo from [pngegg](https://www.pngegg.com/en/png-pxpgu)\n  - Toolbox logo from [IconExperience.com](https://www.iconexperience.com/g_collection/icons/?icon=toolbox)\n\n## Alternatives\n- [kahkhang/Inquirer.sh](https://github.com/kahkhang/Inquirer.sh) - List, Checkbox and Text Input with more advanced\n  validation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimo-reymann%2Fbash-tui-toolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimo-reymann%2Fbash-tui-toolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimo-reymann%2Fbash-tui-toolkit/lists"}