A minimalist Terminal User Interface for searching and exploring Wikidata structured data.
This is a side project of a side project...
It's primary purpose is to serve as a demonstration for Fetch Manager,
a wrapper library for native JS fetch that manages rate limits, concurrency, paging and more.
The Wikibase API is a great example of a rate limited public API with strict rules. That hopefully answers the question "Why write a clunky TUI in Javascript?" 😅
You can try it out directly from javascript-land:
npx wikidata-explore # node
bunx wikidata-explore # bun
If you find it to be of utility, then you can build a standalone binary for your OS:
git clone https://github.com/citkane/wikidata-explore.git
cd wikidata-explore
bun install
./build.sh
requirements:
- Bun JS
- WSL or Git Bash (for Windows)
This will build a stand-alone executable that includes the bun runtime, so expect about 90Mb of file size even though the application is only 30k of compressed javascript.
If you have bun or node on your PATH, you can just run the javascript directly from the repo root:
bun bin/wikidata-explore.js
node bin/wikidata-explore.js
or create your own bash alias, window dodingy, mac dogdgem, etc...
