npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

addok-geocode-stream

v0.27.0

Published

Node.js stream API and CLI for addok geocoder

Readme

addok-geocode-stream

Node.js stream API for addok geocoder

Usage

CLI

Installation

npm install -g addok-geocode-stream

Documentation

$ addok-geocode --help
addok-geocode [options]

Options:
  --help               Show help                                       [boolean]
  --version            Show version number                             [boolean]
  --reverse            Reverse mode                                    [boolean]
  --service            Set geocoding service URL
                                   [default: "https://api-adresse.data.gouv.fr"]
  --strategy           Set geocoding strategy: csv, batch or cluster
                                                                [default: "csv"]
  --columns            Select columns to geocode, in the right order
  --filter             Filter results by a specific field
                       (format: filter-name=filter-value).
                       Can be used multiple times for different filters
  --lon                Define longitude column (geo affinity)
  --lat                Define latitude column (geo affinity)
  --semicolon, --semi  Use semicolon (;) as separator                  [boolean]
  --tab                Use tabulation as separator                     [boolean]
  --pipe               Use pipe as separator                           [boolean]
  --result             Select columns you want to be added to the result by the
                       geocoder. Default: all
  --bucket             Set how many rows are sent in each request
                                                         [number] [default: 200]
  --concurrency        Set how many requests must be executed concurrently
                                                                        [number]
  --encoding           Set data encoding. Can be detected automatically
                                                     [choices: "utf8", "latin1"]
  --clusterConfig      Path to addok config module (addok.conf)

Example

cat my-addresses.csv | addok-geocode --columns numero,voie,code_postal,ville --semicolon > my-geocoded-addresses.csv

Using filters

The --filter option allows you to filter geocoding results by specific fields supported by your addok instance. The format is --filter filter-name=column-name, where filter-name is the filter accepted by addok and column-name is the column in your CSV file.

You can use multiple filters:

# Filter by citycode
cat addresses.csv | addok-geocode --columns address --filter citycode=code_insee > geocoded.csv

# Filter by postcode
cat addresses.csv | addok-geocode --columns address --filter postcode=cp > geocoded.csv

# Use multiple filters
cat addresses.csv | addok-geocode --columns address --filter citycode=code_insee --filter type=address_type > geocoded.csv
Multiple values with OR operator

A column can contain multiple values separated by +, which will be combined with an OR operator:

# If your CSV has a column "codes" with values like "75001+75002+75003"
cat addresses.csv | addok-geocode --columns address --filter citycode=codes > geocoded.csv

This will search for addresses matching citycode 75001 OR 75002 OR 75003.

Note: The available filters depend on your addok instance configuration. Common filters include citycode, postcode, type, but your instance may support additional custom filters.