@lat-lng/cli
v0.1.0
Published
Command-line tool for the Lat·Lng geospatial conversion API — convert KML, GeoJSON, Shapefile, CSV, GPX, WKT from your terminal.
Maintainers
Readme
@lat-lng/cli
Command-line tool for the Lat·Lng geospatial conversion API — convert KML, GeoJSON, Shapefile, CSV, GPX, and WKT between formats without leaving your terminal.
Install
npm install -g @lat-lng/cliNode 18+.
Quick start
# Local conversion — no API key needed
latlng convert districts.kml --to geojson
# Inspect a file before touching it
latlng inspect survey.csv
# Batch a directory
latlng batch ./surveyor_files/ --to geojson --pattern "*.kml"
# Remote conversion (Shapefile, large files, reprojection)
latlng config set api-key latlng_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
latlng convert districts.shp.zip --to geojson --target-crs 4326Local vs remote mode
Conversions between GeoJSON, KML, CSV, WKT, and GPX run entirely locally — no API key, no quota usage, no network required.
The remote API is required for:
- Shapefile read / write
- Cross-CRS reprojection (
--target-crs) - Very large files (>10 MB) where the streaming server pipeline is faster
Set your key once via latlng config set api-key … or export LATLNG_API_KEY=….
Force local mode with --local (errors if the target format can't be produced locally).
Commands
convert <input>
| Flag | Description |
| ---------------- | ------------------------------------------------ |
| -t, --to | Target format — required (geojson, kml, csv, wkt, gpx, shapefile) |
| -f, --from | Source format (auto-detected from extension) |
| -o, --output | Output file or directory |
| --target-crs | Target EPSG code (forces remote) |
| --lat-column | Latitude column name (CSV input) |
| --lng-column | Longitude column name (CSV input) |
| --api-key | API key (or set LATLNG_API_KEY) |
| -q, --quiet | Suppress output except errors |
| --json | Emit the result as JSON |
| --local | Force local conversion |
batch <directory>
Converts every matching file in parallel. Honors --pattern (glob-lite, e.g. "*.kml"), --parallel (default 3), --output (default ./converted). Exits 1 if any file failed.
latlng batch ./surveyor_files --to geojson --pattern "*.kml"inspect <file>
Prints format, feature count, CRS, health score, geometry mix, attributes, and issues. Use --json for machine-readable output.
latlng inspect survey.geojson
latlng inspect survey.geojson --jsonconfig set <key> <value>
Persists configuration to disk (~/.config/latlng/config.json).
latlng config set api-key latlng_live_…
latlng config set base-url https://lat-lng.com/api/v1
latlng config showGet a free API key at lat-lng.com/dashboard/keys.
Exit codes
| Code | Meaning |
| ---- | ------------------------------------------------ |
| 0 | Success |
| 1 | Any error (bad input, network, auth, conversion) |
--quiet + exit codes make the CLI pipe-safe for shell scripts and CI:
latlng convert in.kml --to geojson -q && cp *.geojson ./build/License
MIT.
