Usage Guide

The timezone-boundary-builder script offers several command-line flags to customize the build process. You can build a subset of timezones, skip time-consuming steps, or specify custom directories for input and output.

Base Command

The base command to run the script is:

node --max-old-space-size=8192 index.js [options]

Command-Line Flags

Here is a complete list of available flags:

  • --help Show basic usage information.

  • --cache_dir <path> The directory to read/save cached calculation files to. Defaults to ./cache.

  • --dist_dir <path> The directory to save final release files to. Defaults to ./dist.

  • --downloads_dir <path> The directory to save raw downloaded files from OpenStreetMap. Defaults to ./downloads.

  • --working_dir <path> The directory to save intermediate calculation files to. Defaults to ./working.

  • --included_zones <zone1> <zone2> ... An allow-list of timezone identifiers to build. This is useful for debugging or when you only need data for specific zones. Example:

    node --max-old-space-size=8192 index.js --included_zones America/New_York America/Chicago

  • --excluded_zones <zone1> <zone2> ... A list of timezone identifiers to exclude from the build. If --included_zones is also provided, these zones will be removed from that list.

    node --max-old-space-size=8192 index.js --excluded_zones America/New_York America/Chicago

  • --skip_1970_zones Skips the building of the simplified dataset where zones with the same timekeeping method since 1970 are merged.

  • --skip_now_zones Skips the building of the simplified dataset where zones with the same timekeeping method since the current time are merged.

  • --skip_analyze_diffs Skips analyzing differences between the current output and the previous GitHub release. This can save time.

  • --skip_analyze_osm_tz_diffs Skips downloading all OSM timezone relations and analyzing differences between this project's output and the raw OSM data.

  • --skip_shapefile Skips creating Shapefile outputs for all release data products.

  • --skip_validation Skips all validation checks for overlaps between timezone boundaries. This is useful for faster builds but is not recommended for production data.

  • --skip_zip Skips the zipping of the final release files in the dist directory.