https://github.com/tamnd/europepmc-cli
Search Europe PMC life sciences literature for articles, abstracts, and author records
https://github.com/tamnd/europepmc-cli
academic-papers api-client cli europepmc golang json life-sciences open-data
Last synced: 11 days ago
JSON representation
Search Europe PMC life sciences literature for articles, abstracts, and author records
- Host: GitHub
- URL: https://github.com/tamnd/europepmc-cli
- Owner: tamnd
- License: apache-2.0
- Created: 2026-06-13T19:08:16.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-06-29T12:39:25.000Z (25 days ago)
- Last Synced: 2026-06-29T14:23:06.666Z (25 days ago)
- Topics: academic-papers, api-client, cli, europepmc, golang, json, life-sciences, open-data
- Language: Go
- Size: 43 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# epmc
Search Europe PMC life sciences literature
`epmc` is a single pure-Go binary. It speaks to europepmc 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
```bash
go install github.com/tamnd/europepmc-cli/cmd/epmc@latest
```
Or grab a prebuilt binary from the [releases](https://github.com/tamnd/europepmc-cli/releases), or run
the container image:
```bash
docker run --rm ghcr.io/tamnd/epmc:latest --help
```
## Usage
```bash
epmc --help
epmc version
```
This is a fresh scaffold. The command tree starts with `version`; build out the
real commands in `cli/` on top of the `europepmc` library package.
## Development
```
cmd/epmc/ thin main, wires cli.Root into fang
cli/ the cobra command tree
europepmc/ the library: HTTP client and data models
docs/ tago documentation site
```
```bash
make build # ./bin/epmc
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:
```bash
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](LICENSE).