{"id":22687349,"url":"https://github.com/cablehead/xs-0","last_synced_at":"2025-03-29T15:43:07.133Z","repository":{"id":139658992,"uuid":"558024744","full_name":"cablehead/xs-0","owner":"cablehead","description":"crossing the streams","archived":false,"fork":false,"pushed_at":"2023-06-01T13:48:21.000Z","size":34,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-25T05:05:50.494Z","etag":null,"topics":["cli","eventstore","lmdb","rust"],"latest_commit_sha":null,"homepage":"https://docs.rs/xs-lib","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cablehead.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2022-10-26T18:53:03.000Z","updated_at":"2024-05-07T15:31:53.000Z","dependencies_parsed_at":"2023-07-23T09:00:24.389Z","dependency_job_id":null,"html_url":"https://github.com/cablehead/xs-0","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablehead%2Fxs-0","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablehead%2Fxs-0/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablehead%2Fxs-0/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablehead%2Fxs-0/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cablehead","download_url":"https://codeload.github.com/cablehead/xs-0/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246207491,"owners_count":20740723,"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":["cli","eventstore","lmdb","rust"],"created_at":"2024-12-09T23:18:02.566Z","updated_at":"2025-03-29T15:43:07.102Z","avatar_url":"https://github.com/cablehead.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# xs\n\nThis is a command-line tool (`xs`) and a Rust library (`xs_lib`) for recording\nand retrieving sequential streams of payloads. It uses [Lightning Memory-Mapped\nDatabase](http://www.lmdb.tech/doc/)\n([LMDB](https://docs.rs/lmdb-rkv/0.14.0/lmdb/)) for efficient and reliable\nlocal embedded storage.\n\n## Installation\n\n```\ncargo install xs-lib\n```\n\n## Usage\n\n`xs` is easy to use. Here's an example of recording and retrieving a sequential\nstream of payloads:\n\n```shell\n# Record a payload\n% echo \"hello world\" | xs ./s put\n\n# Retrieve the payloads\n% xs ./s cat\n{\"id\":\"039KW46V39SC3LYMJSMHJJJRH\",\"data\":\"hello world\"}\n```\n\nIDs are [SCRU128](https://github.com/scru128/rust)s.\n\n### Command-Line Interface\n\nHere are the available commands for `xs`:\n\n```\nUsage: xs \u003cPATH\u003e \u003cCOMMAND\u003e\n\nCommands:\n  put    Insert a payload into the store from stdin, with optional follow\n  get    Fetch a specific payload by ID\n  cat    Stream payloads from store with optional last_id and follow\n  call   Send request to topic, wait for response, print output\n  serve  Listen for requests, execute command, write output back\n  help   Print this message or the help of the given subcommand(s)\n\nArguments:\n  \u003cPATH\u003e\n\nOptions:\n  -h, --help     Print help\n  -V, --version  Print version\n```\n\n## License\n\n`xs` is released under the MIT License. See the `LICENSE` file for more details.\n\n## Contributing\n\nContributions to `xs` are welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcablehead%2Fxs-0","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcablehead%2Fxs-0","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcablehead%2Fxs-0/lists"}