Open Source Radar
yusukebe/

ax

GitHubWebsite

ax is a TypeScript-based tool that fetches a page, discovers its structure, and extracts data in a single command. It provides fetch, outline discovery, and multi-field extraction features, with a Bun-based single-file binary build and optional Nix support.

418stars
7forks
1issues
MITlicense
2026since
Star historydaily snapshots by VibeCrowd

Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).

Reviewgenerated from repository data · Jul 18, 2026

What it is

The ax project provides a single-command utility to fetch, discover, and extract data from web pages. It aims to replace curl pipelines with a deterministic, local workflow that outputs structured data suitable for context windows.

ax https://api.example.com/users                     # curl parity — but never silent
ax https://example.com --outline                     # discover the page's structure
ax https://example.com '.item' --row 'title=a, href=a@href'

How it works

  • Fetch: returns a full report (status, headers, ms, final URL after redirects) for each request, with JSON bodies parsed and live requests that do not cache.
  • Discover: uses flags like --outline and --locate to reveal repeating structures and selector mappings without dumping raw HTML; parse requests cache for ~2 minutes and can be refreshed with --fresh or bypassed with --no-cache.
  • Extract: supports --row to pull multi-field rows, --table to convert tables to keyed rows, and --where to filter with an expression language.
  • Output: token-limited results with options like --budget to cap output and default rows as header-once TSV, with --json for JSON output.

Getting started

Install:

curl -fsSL https://ax.yusuke.run/install | sh

Nix (optional):

# Run without installing
nix run github:yusukebe/ax

# Install into your profile
nix profile install github:yusukebe/ax

Usage examples are shown in the README:

ax https://api.example.com/users

Recent releases

  • v0.1.17 (2026-07-17): fix: escape generated CSS selectors by @yearth in https://github.com/yusukebe/ax/pull/37
  • v0.1.16 (2026-07-17): fix(security): avoid caching compound credential query params by @yearth in https://github.com/yusukebe/ax/pull/36
  • v0.1.15 (2026-07-16): fix(fetch): use curl default Content-Type for data flags by @yearth in https://github.com/yusukebe/ax/pull/35
  • v0.1.14 (2026-07-15): fetch: expose final URL after redirects by @yearth in https://github.com/yusukebe/ax/pull/34
  • v0.1.13 (2026-07-15): ci: validate the flake with real nix after each release bump by @yusukebe in https://github.com/yusukebe/ax/pull/32

Full changelog: https://github.com/yusukebe/ax/compare/v0.1.16...v0.1.17

Traction

  • Stars: 418
  • Forks: 7
  • Open issues: 1

Behind the repo

  • The project is authored by yusukebe and uses a Bun-based single-file binary approach with linkedom for DOM parsing.

Caveats

  • License: MIT
  • Created: 2026-07-06
  • Last push: 2026-07-12
  • Language: TypeScript
SharePost on XLinkedIn
All trending reposRevenue-verified startups →