arxiv-cli

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2026 License: Apache-2.0

README

arxiv

A command line for arXiv.

arxiv is a single pure-Go binary. It speaks to arxiv over plain HTTPS, shapes the responses into clean records, and pipes into the rest of your tools. No API key, nothing to run alongside it.

Install

go install github.com/tamnd/arxiv-cli/cmd/arxiv@latest

Or grab a prebuilt binary from the releases, or run the container image:

docker run --rm ghcr.io/tamnd/arxiv:latest --help

Usage

arxiv --help
arxiv version

This is a fresh scaffold. The command tree starts with version; build out the real commands in cli/ on top of the arxiv library package.

Development

cmd/arxiv/   thin main, wires cli.Root into fang
cli/                 the cobra command tree
arxiv/                the library: HTTP client and data models
docs/                tago documentation site
make build      # ./bin/arxiv
make test       # go test ./...
make vet        # go vet ./...

Releasing

Push a version tag and GitHub Actions runs GoReleaser, which builds the archives, Linux packages, the multi-arch GHCR image, checksums, SBOMs, and a cosign signature:

git tag v0.1.0
git push --tags

The Homebrew and Scoop steps self-disable until their tokens exist, so the first release works with no extra secrets.

License

Apache-2.0. See LICENSE.

Directories

Path Synopsis
Package arxiv is the library behind the arxiv command: the HTTP client, request shaping, and the typed data models for the arXiv Open Access API.
Package arxiv is the library behind the arxiv command: the HTTP client, request shaping, and the typed data models for the arXiv Open Access API.
Package cli builds the arxiv command tree on top of the arxiv library.
Package cli builds the arxiv command tree on top of the arxiv library.
cmd
arxiv command
Command arxiv is a single-binary command line for arxiv.
Command arxiv is a single-binary command line for arxiv.
pkg
render
Package render turns slices of record structs into one of the output formats hackernews-cli supports: table, json, jsonl, csv, tsv, url, and raw.
Package render turns slices of record structs into one of the output formats hackernews-cli supports: table, json, jsonl, csv, tsv, url, and raw.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL