{"repo":"webpro-nl/unbash","free":true,"listed":false,"github":"https://github.com/webpro-nl/unbash","clone":"git clone https://github.com/webpro-nl/unbash.git","description":"Fast 0-deps bash parser written in TypeScript","language":"Shell","stars":102,"topics":["bash","parser","ast","parser-library","shell","shell-parser","shell-script","syntax-tree","typescript"],"license":"ISC","category":"cli-tools","readme_excerpt":"unbash Fast 0-deps bash parser written in TypeScript [![NPM Version][2]][1] [![NPM Downloads][3]][1] Install When to use unbash? Use unbash when your input is Bash source: a pasted command, a complete script, or shell source embedded in another format, and you need to inspect its structure without executing it. It returns a typed, source-positioned AST. Example use cases: - Classify commands, redirects, substitutions, and background execution for permission prompts, allowlists, or audit findings - Statically inventory executables and literal file, configuration, and dependency references in package scripts, CI steps, task-runner configs, hooks, and source-code shell calls - Import or convert a supported command such as curl without folding neighboring pipelines, logical chains, redirects, or comments into its arguments - Attach diagnostics to generated or pasted Bash using source-positioned errors and partial trees - Build explanations, visualizations, or structured previews of pipelines, conditions, expansions, and nested commands - Find or migrate command invocations and flags with source-range edits that leave surrounding formatting and comments untouched When Bash is embedded in JSON, YAML, or source code, use the host-language parser to extract the shell string first. unbash provides Bash structure and source ranges within that string; the consumer owns command-specific argument semantics and policy. Supported syntax unbash supports commands, control flows, pipelines, re","default_branch":null,"files":null,"tree":[],"storefront":"/r/webpro-nl","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/webpro-nl/unbash/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}