{"id":17383310,"url":"https://github.com/hayao0819/fasbashlib","last_synced_at":"2025-07-08T20:04:49.544Z","repository":{"id":41505097,"uuid":"458223506","full_name":"Hayao0819/FasBashLib","owner":"Hayao0819","description":"A collection of many personal functions for modern Bash","archived":false,"fork":false,"pushed_at":"2023-02-04T05:21:08.000Z","size":7006,"stargazers_count":12,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"dev-0.2.x","last_synced_at":"2025-03-28T18:51:58.839Z","etag":null,"topics":["arch-linux","bash","bash-script","library","linux","shell","shell-script","shellscript"],"latest_commit_sha":null,"homepage":"https://blog.fascode.net/2022/05/05/fasbashlib/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hayao0819.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-11T14:40:43.000Z","updated_at":"2025-02-26T04:07:37.000Z","dependencies_parsed_at":"2023-02-18T14:01:26.807Z","dependency_job_id":null,"html_url":"https://github.com/Hayao0819/FasBashLib","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hayao0819%2FFasBashLib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hayao0819%2FFasBashLib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hayao0819%2FFasBashLib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hayao0819%2FFasBashLib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hayao0819","download_url":"https://codeload.github.com/Hayao0819/FasBashLib/tar.gz/refs/heads/dev-0.2.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249045382,"owners_count":21203865,"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":["arch-linux","bash","bash-script","library","linux","shell","shell-script","shellscript"],"created_at":"2024-10-16T07:41:15.201Z","updated_at":"2025-04-15T09:40:42.370Z","avatar_url":"https://github.com/Hayao0819.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"## FasBashLib - A collection of many personal functions for modern Bash\n\n\u003cp\u003e\n    \u003ca href=\"/LICENSE.md\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/license-MIT--SUSHI-orange?style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib/actions\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/workflow/status/Hayao0819/FasBashLib/Test%20library?style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib/stargazers\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/stars/Hayao0819/FasBashLib?color=yellow\u0026style=flat-square\u0026logo=github\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib/commits/\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/last-commit/Hayao0819/FasBashLib?style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib/commits/\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/commit-activity/m/Hayao0819/FasBashLib?style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib/\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/repo-size/Hayao0819/FasBashLib?style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Hayao0819/FasBashLib\"\u003e\n        \u003cimg src=\"https://img.shields.io/tokei/lines/github/Hayao0819/FasBashLib?style=flat-square\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\nA collection of many personal functions for modern Bash to write safe and readable code quickly\n\nThey are grouped by function type, and some functions are specific to a particular system.\n\nI like Arch Linux, so there may be many for it.\n\n## Features\nThese are only part of FasBashLib's main libraries.\n\n- Supports 3 coding styles, `Upper camel case` , `Lower camel case`, and `Snake case`\n- Select and build only the functions you need\n- Automatically generate documents from source code comments\n- Unique test tool specially designed\n- Safe and easy array operation (`Array`)\n- Batch analysis of URLs from standard input (`URL`)\n- Arch Linux-specific functions (`Aur`, `ArchLinux`, `Pacman`, `SrcInfo`)\n\n## Why?\n\nModern Bash is feature-rich, making it possible to write secure code compared to pure shells.\n\nIf you are coding utilizing these features, you will find yourself writing the same code over and over again.\n\nAlso, Bash has no type restrictions, so even something as simple as evaluating boolean values can become redundant if you consider safety.\n\nThis library has many functions, especially for arrays, that make it easy to write safe code that takes special characters such as whitespace into account.\n\nFurthermore, shell scripts currently lack a system for managing and loading libraries in a consistent manner.\n\nFasBashLib is modular and assists in adding and removing functions and loading them in various environments.\n\nIf you want to add your own functions, fork this project and place your shell scripts in src.\n\nTesting, documentation generation, local installation, and dynamic loading from online are all supported.\n\n## Use it\n\nSee [How to use it](./docs/USE.md)\n\n## Document\n\nYou can read the latest auto generated documents [here](https://github.com/Hayao0819/FasBashLib/tree/build-0.2.x/docs/lib).\n\nOr download document from [Release Page](https://github.com/Hayao0819/FasBashLib/releases)\n\n## Test\n\nSee [How to test](./docs/TEST.md)\n\n## Code examples\n\nYou can add your script to this list. Please send a Pull request.\n\n- [10 Number Game](https://gist.github.com/Hayao0819/caad8ef3952bdfef7287ef8c5d71e03c) - A simple game about math\n- [ArchNews.sh](https://gist.github.com/Hayao0819/897be45dfedb0aa4fcc2735a0831966f) - Show the latest Arch Linux news\n- [Hayao0819/MisskeyBot](https://github.com/Hayao0819/MisskeyBot) - A Misskey Bot to renote automatically\n\n## Special thanks\n\nFasBashLib is composed of these projects. Deepest thanks to their contributors!\n\n- [agners/archlinuxarm-docker](https://github.com/agners/archlinuxarm-docker) - Arch Linux ARM Docker images\n- [ko1nksm/readlinkf](https://github.com/ko1nksm/readlinkf) - The functions in `Readlink.sh` are taken from this repository.\n- [reconquest/shdoc](https://github.com/reconquest/shdoc) - Script to generate documentation from source code\n- [Zuzzuc/Bash-minifier](https://github.com/Zuzzuc/Bash-minifier) - Script used to minify bash scripts\n- [mvdan/sh](https://github.com/mvdan/sh) - `Build-Single.sh` formats the generated scruples using shfmt.\n- [ShellShoccar-jpn/Parsrs](https://github.com/ShellShoccar-jpn/Parsrs) - Simple parsers written in POSIX shell (for `Parsrs`)\n- [shimataro/ssh-key-action](https://github.com/shimataro/ssh-key-action) - Auto build and update with GitHub Action\n- [softprops/action-gh-release](https://github.com/softprops/action-gh-release) - Make new release from tag with GitHub Action\n- [mfinelli/setup-shfmt](https://github.com/mfinelli/setup-shfmt) - Setup shfmt and run it on GitHub Action\n- [watasuke102/MIT-SUSHI-WARE](https://github.com/watasuke102/mit-sushi-ware) - MIT-derived license that only wants copyright notice and sushi\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhayao0819%2Ffasbashlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhayao0819%2Ffasbashlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhayao0819%2Ffasbashlib/lists"}