{"id":20910990,"url":"https://github.com/euhmeuh/command-tree","last_synced_at":"2026-02-12T23:32:05.970Z","repository":{"id":62424035,"uuid":"116386052","full_name":"euhmeuh/command-tree","owner":"euhmeuh","description":"A Racket package to handle tree-style (à la git) command line arguments","archived":false,"fork":false,"pushed_at":"2018-03-20T13:37:32.000Z","size":8,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-12-22T15:51:30.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Racket","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/euhmeuh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-01-05T13:06:28.000Z","updated_at":"2019-12-02T03:00:22.000Z","dependencies_parsed_at":"2022-11-01T18:01:06.833Z","dependency_job_id":null,"html_url":"https://github.com/euhmeuh/command-tree","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/euhmeuh/command-tree","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euhmeuh%2Fcommand-tree","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euhmeuh%2Fcommand-tree/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euhmeuh%2Fcommand-tree/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euhmeuh%2Fcommand-tree/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/euhmeuh","download_url":"https://codeload.github.com/euhmeuh/command-tree/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euhmeuh%2Fcommand-tree/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29386217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T22:07:52.078Z","status":"ssl_error","status_checked_at":"2026-02-12T22:07:49.026Z","response_time":55,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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-11-18T14:18:49.508Z","updated_at":"2026-02-12T23:32:05.946Z","avatar_url":"https://github.com/euhmeuh.png","language":"Racket","funding_links":[],"categories":[],"sub_categories":[],"readme":"# command-tree\nA Racket package to handle tree-style (à la git) command line arguments\n\n## Examples\n\nThis package allows you to write command line applications that behaves like this:\n\n`$ git stash pop`  \n\n`$ pimp my ride \"green neons\"`  \n\n`$ ipod list all albums from 1969`  \n\n`$ hello world --help`\n\n# Install\n\n`raco pkg install command-tree`\n\n# Usage\n\n```racket\n#lang racket/base\n\n(require command-tree)\n\n;; ... define procedures git-clone, git-init, git-stash-apply...\n\n;; write your available commands in a tree\n(define git-commands\n  `([clone ,git-clone]\n    [init ,git-init]\n    [push ,git-push]\n    [remote (add ,git-remote-add)\n            (rename ,git-remote-rename)\n            (remove ,git-remote-remove)]\n    [stash (list ,git-stash-list)\n           (show ,git-stash-show)\n           (drop ,git-stash-drop)\n           (pop ,git-stash-pop)\n           (apply ,git-stash-apply)]))\n\n;; use the tree to parse the command line\n(command-tree git-commands (current-command-line-arguments))\n```\n\nSee the test submodule in main.rkt for a complete usage example.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuhmeuh%2Fcommand-tree","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feuhmeuh%2Fcommand-tree","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuhmeuh%2Fcommand-tree/lists"}