npm

Join us for the upcoming webinar, "Enterprise JavaScript done right: the tools you love, the security you need."Sign up here »

koop-provider-csv

3.0.1 • Public • Published

koop-provider-csv

npm Build Status

A configurable and reusable CSV provider for Koop, created with Koop CLI

This provider can load a CSV file from a local path or a remote endpoint. The provided CSV file must include columns of latitude and longitude coordinates.

Features

  • fully configurable
  • support multiple CSV sources
  • support local file path or remote endpoint
  • parse boolean and numeric values automatically
  • stream processing

Installation

with npm

npm install koop-provider-csv

with Koop CLI for your Koop app

bash koop add koop-provider-csv

Usage

Once installed, this provider enables routes like

/koop-provider-csv/:id/FeatureServer/*

where id is the unique ID for a source CSV defined in the configuration file.

For example, this route allows to query a CSV file with ID my-csv:

/koop-provider-csv/my-csv/FeatureServer/0/query

Configuration

This provider is configured with config and all configuration files are in the config directory.

A configuration looks like this:

{
  // configuration namespace for this provider plugin
  "koop-provider-csv": {
    // define one or multiple CSV sources
    "sources": {
      // a unique ID for each source, which is used in the query route
      "my-data": {
        // [required] a file path or a URL for the source CSV
        "url": "path_to_csv",
        // [required] point coordinate columns
        "geometryColumns": {
          "longitude": "longitude_column_name",
          "latitude": "latitude_column_name"
        },
        // [optional] delimiter character
        "delimiter": ",",
        // [optional] ArcGIS service metadata
        "metadata": {
          "idField": "id_column_name"
        }
      }
    }
  }
}
 

See config/example.json for a full example.

Development

Run dev server

$ npm start

A dev server will be running at http://localhost:8080. By default, it will use with NODE_ENV=dev and the dev configuration config/dev.json should be created beforehand.

Run tests

$ npm test

License

MIT

install

npm i koop-provider-csv

Downloadsweekly downloads

19

version

3.0.1

license

MIT

last publish

collaborators

  • avatar
Report a vulnerability