Package detail

@bsull/augurs

grafana258.1kMIT OR Apache-2.00.10.0

JavaScript bindings for the augurs time series library.

analysis, forecasting, outlier-detection, time-series

readme

augurs

npm npm npm

JavaScript bindings for the augurs time series framework.

Installation

Add this package to your project with:

npm install @bsull/augurs

Usage

Full usage docs are still to come, but here's a quick example:

import initProphet, { Prophet } from '@bsull/augurs/prophet';
import initTransforms, { Pipeline, Transform } from '@bsull/augurs/transforms';
// Note: you'll need this extra package if you want to use the Prophet model.
import { optimizer } from '@bsull/augurs-prophet-wasmstan';

// Initialize the WASM components before using any augurs functions.
await Promise.all([initProphet(), initTransforms()]);

// Create a pipeline which will apply a Yeo-Johnson transform and a standard scaler.
const pipeline = new Pipeline([
  new Transform('yeoJohnson'),
  new Transform('standardScaler'),
]);

// Create a Prophet model with the WASM-based optimizer.
const prophet = new Prophet({ optimizer });

const ds = [1704067200, 1704871384, 1705675569, 1706479753, 1707283938, 1708088123,
const y = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0];

// Fit the pipeline to the data.
const yTransformed = pipeline.fitTransform(y);

// Fit the Prophet model to the transformed data.
prophet.fit({ ds, y: yTransformed });

// Make in-sample predictions and back-transform them.
const preds = prophet.predict();
const yhat = {
  point: pipeline.inverseTransform(preds.yhat.point),
  intervals: {
    lower: pipeline.inverseTransform(preds.yhat.lower),
    upper: pipeline.inverseTransform(preds.yhat.upper),
  },
};

See the documentation for more information.

License

This project is dual-licensed under the Apache 2.0 and MIT licenses.

changelog

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.10.0 - 2025-05-19

augurs-seasons

No changes in this release.

augurs-prophet

  • Add JS bindings for Prophet make_future_dataframe (#257, by @shenxiangzhuang)
  • (deps) bump zipfile to 3.x (#286)
  • (deps) update ureq requirement from 2.10.1 to 3.0.0 (#245)
  • (deps) bump wasmtime and wasmtime-wasi to 32 (#289)

augurs-outlier

Added

  • add setters for parameters (#253, by @shenxiangzhuang)

augurs-ets

No changes in this release.

augurs-mstl

No changes in this release.

augurs-dtw

No changes in this release.

augurs-clustering

No changes in this release.

augurs-changepoint

No changes in this release.

0.9.0 - 2025-01-14

augurs-changepoint

No changes in this release.

augurs-clustering

Changed

  • (clustering) [breaking] use new DbscanCluster type instead of isize (#233)

This changes the return type of DbscanClusterer::fit from Vec<isize> to Vec<DbscanCluster>, which is a more self-explanatory type. The ID of the first cluster is now 1 (instead of 0), and the IDs of the subsequent clusters are incremented by 1.

augurs-core

Added

  • exposed FloatIterExt with helper methods for calculating summary statistics on iterators over floats (#227)

augurs-dtw

No changes in this release.

augurs-ets

No changes in this release.

augurs-forecaster

Added

  • allow ignoring NaNs in power transforms (#234)
  • add NaN handling to MinMaxScaler and StandardScaler (#227)

augurs-mstl

No changes in this release.

augurs-outlier

No changes in this release.

augurs-prophet

No changes in this release.