# Install xmq with Homebrew

Tool and language to work with xml/html/json. Version 4.2.0 via Homebrew; verified 2026-05-24.

## Install

```sh
sudo av install brew:xmq
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install xmq
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:xmq
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/xmq>
- **Version:** 4.2.0
- **Source summary:** Tool and language to work with xml/html/json
- **Homepage:** <https://libxmq.org>
- **Repository:** <https://github.com/libxmq/xmq>
- **Upstream docs:** <https://libxmq.org/>
- **License:** MIT
- **Source archive:** <https://github.com/libxmq/xmq/archive/refs/tags/4.2.0.tar.gz>
- **Last updated:** 2026-05-24T18:54:31Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- xmq (cli)
- xmq (alias)

## Build dependencies

- pkgconf

## Uses from macOS

- libxml2
- libxslt

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 4.2.0
- Package-manager updated: 2026-05-24
- Local data: ok
- Upstream repository: https://github.com/libxmq/xmq
- Upstream latest detected: 4.2.0 (current)
## Project history and usage

XMQ is both a command-line tool and a compact markup syntax for working with XML, HTML, JSON, and related transforms. Its niche is making tree-shaped markup readable, editable, pretty-printable, and pipe-friendly without giving up round-tripping back to XML/HTML or JSON.

### Project history

The GitHub repository was created in 2019 and describes XMQ as a converter between XML/HTML and a more human-readable XMQ/HTMQ form, with JSON support, syntax highlighting, pretty printing, a pager, HTML and TeX rendering, and Invisible XML grammar support.

The project documentation and 2025 PDF by Fredrik Ohrstrom frame the design as a response to XML's editing pain: closing tags, significant whitespace, comments, attributes, entities, and transforms are represented in a syntax intended to remain visibly structured and always pretty-printable.

### Adoption history

XMQ is a modern niche tool rather than a broad standard. Its public adoption signal is mostly package-manager availability, GitHub activity, and command-line discussion among users who want XML/HTML/JSON inspection to feel more like jq-era terminal work.

The tool's practical appeal grew as it added more than one format conversion. The homepage examples show pretty-printing XML, HTML, and JSON; using an internal pager; deleting nodes with XPath; converting between xmq/xml/htmq/html/json; applying XSLT/XSLQ-style transforms; rendering to HTML or TeX; and parsing arbitrary input with ixml grammars.

### How it is used

Typical xmq usage starts as a pretty-printer: run xmq pom.xml, xmq data.json, cat rss.xml | xmq, or pipe a web page through deletion and pager commands to inspect the structure. The same executable can convert back out with commands such as to-xml, to-html, and to-json.

Its more package-nerd use is as a bridge between tree formats and Unix text workflows. XMQ's compact form and clines-style output make it easier to grep, diff, store, or log structured markup while still keeping enough structure to reconstruct the original document.

### Why package nerds care

XMQ is interesting because it treats XML not as obsolete, but as a powerful tree model with bad ergonomics. The package gives terminal users a reversible shorthand plus tools around XPath, transforms, paging, and rendering.

It also sits near a family of command-line format shims such as jq, yq, xq, xmlstarlet, and pup, but takes a different route: instead of only querying a source format, it introduces an alternate readable surface syntax for markup.

### Timeline

- 2019-09-02: The libxmq/xmq GitHub repository is created.
- 2020s: The tool expands around XML, HTML, JSON, syntax highlighting, paging, conversion, XSLT/XSLQ transforms, and ixml parsing.
- 2025-08-04: The XMQ/HTMQ PDF presents the rationale and compact specification for the syntax.
- 2026: The project is packaged in Homebrew and documented at libxmq.org as a standalone xmq tool plus embeddable C source.

### Related projects

- jq is the obvious JSON-side comparison for command-line structured-data inspection.
- xmlstarlet and xq are adjacent XML command-line tools, though they query or transform existing formats rather than introducing XMQ as a reversible syntax.
- Invisible XML is supported by xmq for parsing non-XML input through grammars.
- libxml2 and libxslt are related XML infrastructure used throughout the broader XML tooling ecosystem.

### Sources

- <https://api.github.com/repos/libxmq/xmq>
- <https://github.com/libxmq/xmq>
- <https://libxmq.org/>
- <https://libxmq.org/xmq.pdf>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** xmq
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [html-xml-utils](https://www.automicvault.com/pkg/brew/html-xml-utils/) - Shares av.db curated category or tags: cli, developer-tools, html, markup, xml.
- [discount](https://www.automicvault.com/pkg/brew/discount/) - Shares av.db curated category or tags: cli, developer-tools, html, markup.
- [hjson](https://www.automicvault.com/pkg/brew/hjson/) - Shares av.db curated category or tags: cli, data-format, developer-tools, json.
- [htmlcleaner](https://www.automicvault.com/pkg/brew/htmlcleaner/) - Shares av.db curated category or tags: cli, developer-tools, html, markup, xml.
- [htmlcompressor](https://www.automicvault.com/pkg/brew/htmlcompressor/) - Shares av.db curated category or tags: cli, developer-tools, html, markup, xml.
- [json5](https://www.automicvault.com/pkg/brew/json5/) - Shares av.db curated category or tags: cli, data-format, developer-tools, json.
- [markdown](https://www.automicvault.com/pkg/brew/markdown/) - Shares av.db curated category or tags: cli, developer-tools, html, markup.
- [pandoc](https://www.automicvault.com/pkg/brew/pandoc/) - Shares av.db curated category or tags: cli, developer-tools, html, markup.
- [libwbxml](https://www.automicvault.com/pkg/brew/libwbxml/) - Both packages work with overlapping file formats or content types. Shared terms: cli, data, data-format, developer, developer-tools.

## Combined YAML source

View the package source record on GitHub. [combined/xmq.yml](https://github.com/automic-vault/db/blob/main/combined/xmq.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- cross-ecosystem install command graph
