{"id":23174119,"url":"https://github.com/dhth/tbll","last_synced_at":"2026-03-13T22:35:07.724Z","repository":{"id":254435918,"uuid":"846526778","full_name":"dhth/tbll","owner":"dhth","description":"tbll outputs data in tabular format","archived":false,"fork":false,"pushed_at":"2026-03-12T00:07:53.000Z","size":161,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-12T05:46:41.169Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/dhth.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-23T11:57:25.000Z","updated_at":"2026-03-12T00:07:56.000Z","dependencies_parsed_at":"2024-09-11T00:58:36.437Z","dependency_job_id":"69cbc38d-3154-4f86-a798-a09b13339a19","html_url":"https://github.com/dhth/tbll","commit_stats":null,"previous_names":["dhth/tbll"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/dhth/tbll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhth%2Ftbll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhth%2Ftbll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhth%2Ftbll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhth%2Ftbll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dhth","download_url":"https://codeload.github.com/dhth/tbll/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhth%2Ftbll/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30478185,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-13T20:45:58.186Z","status":"ssl_error","status_checked_at":"2026-03-13T20:45:20.133Z","response_time":60,"last_error":"SSL_read: 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-18T05:19:18.365Z","updated_at":"2026-03-13T22:35:07.691Z","avatar_url":"https://github.com/dhth.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tbll\n\n[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/dhth/tbll/main.yml?style=flat-square)](https://github.com/dhth/tbll/actions)\n[![Crates.io Version](https://img.shields.io/crates/v/tbll?style=flat-square)](https://crates.io/crates/tbll)\n[![Latest Release](https://img.shields.io/github/release/dhth/tbll.svg?style=flat-square\u0026label=github%20release)](https://github.com/dhth/tbll/releases/latest)\n[![Commits Since Latest Release](https://img.shields.io/github/commits-since/dhth/tbll/latest?style=flat-square)](https://github.com/dhth/tbll/releases)\n\n✨ Overview\n---\n\n`tbll` outputs data in tabular format.\n\n```bash\ncat \u003c\u003c EOF | tbll\nMovie,Year,Director,Genre\nThe Matrix,1999,Lana \u0026 Lilly Wachowski,Science Fiction\nFight Club,1999,David Fincher,Drama\nPulp Fiction,1994,Quentin Tarantino,Crime\nThe Shawshank Redemption,1994,Frank Darabont,Drama\nJurassic Park,1993,Steven Spielberg,Adventure\nForrest Gump,1994,Robert Zemeckis,Drama\nEOF\n```\n\n```text\n┌──────────────────────────┬──────┬────────────────────────┬─────────────────┐\n│ Movie                    │ Year │ Director               │ Genre           │\n├──────────────────────────┼──────┼────────────────────────┼─────────────────┤\n│ The Matrix               │ 1999 │ Lana \u0026 Lilly Wachowski │ Science Fiction │\n│ Fight Club               │ 1999 │ David Fincher          │ Drama           │\n│ Pulp Fiction             │ 1994 │ Quentin Tarantino      │ Crime           │\n│ The Shawshank Redemption │ 1994 │ Frank Darabont         │ Drama           │\n│ Jurassic Park            │ 1993 │ Steven Spielberg       │ Adventure       │\n│ Forrest Gump             │ 1994 │ Robert Zemeckis        │ Drama           │\n└──────────────────────────┴──────┴────────────────────────┴─────────────────┘\n```\n\n💾 Installation\n---\n\n**homebrew**:\n\n```sh\nbrew install dhth/tap/tbll\n```\n\n**cargo**:\n\n```sh\ncargo install tbll\ncargo install --git https://github.com/dhth/tbll.git\n```\n\nOr get the binaries directly from a Github [release][1]. Read more about\nverifying the authenticity of released artifacts\n[here](#-verifying-release-artifacts).\n\n⚡️ Usage\n---\n\n### Help\n\n```text\ntbll outputs data in tabular format\n\nUsage: tbll [OPTIONS]\n\nOptions:\n  -p, --input-path \u003cSTRING\u003e         Input file path; tbll will read from stdin if this is not provided\n  -d, --delimiter \u003cSTRING\u003e          Delimiter to use [default: ,]\n      --headers \u003cSTRING,STRING...\u003e  Command separated list of headers\n  -c, --cols \u003cNUMBER,NUMBER...\u003e     Indices of columns (starting from zero) to display\n  -s, --style \u003cSTRING\u003e              Border Style [default: sharp] [possible values: ascii, ascii-rounded, blank, dots, empty, extended, markdown, modern, modern-rounded, psql, re-structured-text, rounded, sharp]\n  -l, --left-pad \u003cNUMBER\u003e           Left padding for cells [default: 1]\n  -r, --right-pad \u003cNUMBER\u003e          Right padding for cells [default: 1]\n  -h, --help                        Print help\n```\n\n### Basic Usage\n\n```bash\ncat \u003c\u003cEOF | tbll \\\n    --delimiter ':' \\\n    --headers 'col1,col2,col3' \\\n    --style psql \\\n    --left-pad 2 \\\n    --right-pad 2\nr1c1:r1c2:r1c3\nr2c1:r2c2:r2c3\nr3c1:r3c2:r3c3\nr4c1:r4c2:r4c3\nr5c1:r5c2:r5c3\nEOF\n```\n\n```text\n  col1  |  col2  |  col3\n--------+--------+--------\n  r1c1  |  r1c2  |  r1c3\n  r2c1  |  r2c2  |  r2c3\n  r3c1  |  r3c2  |  r3c3\n  r4c1  |  r4c2  |  r4c3\n  r5c1  |  r5c2  |  r5c3\n```\n\n```bash\ncat \u003c\u003cEOF | tbll\nattribute,value\nevent,COMMIT_PUSHED\nsystem,tbll\nenv,prod\ncommit,\"$(git rev-parse --short HEAD 2\u003e/dev/null | xargs)\"\nmessage,\"$(git log -1 --pretty=format:'%B' 2\u003e/dev/null | xargs)\"\nstat,\"$(git diff HEAD~1..HEAD --shortstat 2\u003e/dev/null | xargs)\"\nauthor,\"$(git log -1 --pretty=format:'%ae' 2\u003e/dev/null | xargs)\"\nEOF\n```\n\n```text\n┌───────────┬────────────────────────────────────────────────────┐\n│ attribute │ value                                              │\n├───────────┼────────────────────────────────────────────────────┤\n│ event     │ COMMIT_PUSHED                                      │\n│ system    │ tbll                                               │\n│ env       │ prod                                               │\n│ commit    │ dfe3823                                            │\n│ message   │ chore(deps): bump clap from 4.5.27 to 4.5.31 (#19) │\n│ stat      │ 2 files changed, 7 insertions(+), 7 deletions(-)   │\n│ author    │ 49699333+dependabot[bot]@users.noreply.github.com  │\n└───────────┴────────────────────────────────────────────────────┘\n```\n\n🔐 Verifying release artifacts\n---\n\nIn case you get the `tbll` binary directly from a [release][1], you may want to\nverify its authenticity. Checksums are applied to all released artifacts, and\nthe resulting checksum file is attested using [Github Attestations][2].\n\nSteps to verify (replace `A.B.C` in the commands below with the version you\nwant):\n\n1. Download the sha256 checksum file for your platform from the release:\n\n   ```shell\n   curl -sSLO https://github.com/dhth/tbll/releases/download/vA.B.C/tbll-x86_64-unknown-linux-gnu.tar.xz.sha256\n   ```\n\n2. Verify the integrity of the checksum file using [gh][3].\n\n   ```shell\n   gh attestation verify tbll-x86_64-unknown-linux-gnu.tar.xz.sha256 --repo dhth/tbll\n   ```\n\n3. Download the compressed archive you want, and validate its checksum:\n\n   ```shell\n   curl -sSLO https://github.com/dhth/tbll/releases/download/vA.B.C/tbll-x86_64-unknown-linux-gnu.tar.xz\n   sha256sum --ignore-missing -c tbll-x86_64-unknown-linux-gnu.tar.xz.sha256\n   ```\n\n3. If checksum validation goes through, uncompress the archive:\n\n   ```shell\n   tar -xzf tbll-x86_64-unknown-linux-gnu.tar.xz\n   ./tbll\n   # profit!\n   ```\n\n[1]: https://github.com/dhth/tbll/releases\n[2]: https://github.blog/news-insights/product-news/introducing-artifact-attestations-now-in-public-beta/\n[3]: https://github.com/cli/cli\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhth%2Ftbll","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdhth%2Ftbll","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhth%2Ftbll/lists"}