{"id":23092030,"url":"https://github.com/thiswillbeyourgithub/shellargparser","last_synced_at":"2026-01-31T03:01:08.045Z","repository":{"id":265121722,"uuid":"895201540","full_name":"thiswillbeyourgithub/ShellArgParser","owner":"thiswillbeyourgithub","description":null,"archived":false,"fork":false,"pushed_at":"2025-06-17T13:29:09.000Z","size":28,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-27T20:12:20.412Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thiswillbeyourgithub.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-27T18:41:10.000Z","updated_at":"2025-06-17T13:29:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"165ea680-9370-4297-b379-ff993e8e134b","html_url":"https://github.com/thiswillbeyourgithub/ShellArgParser","commit_stats":null,"previous_names":["thiswillbeyourgithub/shellargparser"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/thiswillbeyourgithub/ShellArgParser","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2FShellArgParser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2FShellArgParser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2FShellArgParser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2FShellArgParser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thiswillbeyourgithub","download_url":"https://codeload.github.com/thiswillbeyourgithub/ShellArgParser/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2FShellArgParser/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28927765,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T02:59:34.861Z","status":"ssl_error","status_checked_at":"2026-01-31T02:59:05.369Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-12-16T21:26:51.614Z","updated_at":"2026-01-31T03:01:08.029Z","avatar_url":"https://github.com/thiswillbeyourgithub.png","language":"Python","readme":"\n# ShellArgParser\nA simple python tool to parse any arg / kwarg arguments in a manner that is easy to parse for the linux shell.\n\n## I don't understand\nFor example:\n```sh\nuvx ShellArgParser@latest a_file --test=something -a -b -no-c another_file\n```\nWill print this text:\n```sh\nARGS_1=\"a_file\"\nARGS_2=\"another_file\"\nARGS_TEST=\"something\"\nARGS_A=1\nARGS_B=1\nARGS_C=0\n```\n\nSo running this:\n```sh\neval $(uvx ShellArgParser@latest --test=something -a -b -no-c)\n```\nWill parse the args and kwargs as shell environment variables, handy for use in the shell:\n```sh\necho $ARGS_TEST  # outputs 'something'\n```\n\n## But why would you make this?\nHandling user arguments are a major annoyance for me in shell, and in python using `fire` makes it a breeze, so it's is a great way to avoid reinventing the wheel.\nHence, when writing a small shell script, using a python cli tool oneliner makes is a real time saver for me.\n\n## Notes:\n- `-something` is parsed as `ARGS_SOMETHING=1`\n- `-no-something` is parsed as `ARGS_SOMETHING=0`\n- `-no_something` is parsed as `ARGS_SOMETHING=0`\n- Any `None` python value is parsed as `0`\n- A prototype 'pure shell' version of this script can be found in `./ShellArgParser.sh`\n\n# Getting started\n* From pypi:\n    * As a uv tool: `uvx ShellArgParser@latest --help`\n    * Via uv: `uv pip install ShellArgParser`\n    * Via pip: `pip install ShellArgParser`\n* From github:\n    * Clone this repo then `pip install .`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthiswillbeyourgithub%2Fshellargparser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthiswillbeyourgithub%2Fshellargparser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthiswillbeyourgithub%2Fshellargparser/lists"}