Published on PyPI

Aardvark: A Published CSV-Wrangling CLI

TL;DR: A zero-dependency Python CLI that interactively filters and sorts CSV data by column, splitting matched and unmatched rows into separate files. Packaged for PyPI with a clean module layout and a single `aardvark` entry point.

Aardvark is a small command-line utility for slicing up CSV files without opening a spreadsheet. It grew out of a recurring chore — pulling the rows that match a value in one column and setting the rest aside — and turned into a properly packaged, installable tool.

  • Interactive filtering. Pick a column, supply one or more keywords, choose case sensitivity, and Aardvark partitions the file — writing matched rows and unmatched rows to separate output files in one pass.
  • Smart sorting. Sort the result by any column; the tool auto-detects numeric vs. text data so numbers sort numerically and strings sort lexically.
  • Zero dependencies. Built entirely on the Python 3.6+ standard library, so it runs anywhere Python does — no virtualenv archaeology required.
  • Properly packaged. Ships as aardvark-tools with a setup.py, an MIT license, and an aardvark csv-filter entry point — clean module separation (CLI / core logic / UI) that leaves room to grow more subcommands.
pip install aardvark-tools
aardvark csv-filter   # interactive filter + sort session

A deliberately small project, but a complete one: real packaging, a real distribution target, and an interface a non-author could actually use.