diff --git a/LICENSE b/LICENSE index 261eeb9e..463aca9e 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright [yyyy] [name of copyright owner] + Copyright 2021-2024 Spice AI, Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/spiceaidocs/config.toml b/spiceaidocs/config.toml index 91ee42cd..d261e5a2 100644 --- a/spiceaidocs/config.toml +++ b/spiceaidocs/config.toml @@ -59,10 +59,6 @@ anchor = "smart" # Everything below this are Site Params -[[menu.left]] - name = "API" - weight = 10 - url = "api" [[menu.left]] name = "CLI" weight = 10 @@ -74,7 +70,7 @@ anchor = "smart" [[menu.main]] name = "GitHub" weight = 50 - url = "https://github.com/spiceai" + url = "https://github.com/spiceai/spiceai" [[menu.main]] name = "Blog" weight = 60 diff --git a/spiceaidocs/content/en/_index.md b/spiceaidocs/content/en/_index.md index 622cc667..94674fd9 100644 --- a/spiceaidocs/content/en/_index.md +++ b/spiceaidocs/content/en/_index.md @@ -3,21 +3,21 @@ type: docs no_list: true --- -# Spice.ai +# Spice -**Spice.ai** makes it easy for developers to build apps that learn and adapt by streamlining the use of machine learning (ML) in software. Combined with time-series data, developers can create applications that continuously improve using ML recommendations. +**Spice** makes it easy for developers to build apps that learn and adapt by streamlining the use of machine learning (ML) in software. Combined with time-series data, developers can create applications that continuously improve using ML recommendations. -Spice.ai takes a developer-first approach, and is focused on a fast, iterative, inner development loop, enabling developers to get started with ML in minutes instead of months. +Spice takes a developer-first approach, and is focused on a fast, iterative, inner development loop, enabling developers to get started with ML in minutes instead of months. -๐Ÿ“ข Read the Spice.ai announcement blog post at [blog.spiceai.org](https://blog.spiceai.org/posts/2021/09/07/introducing-spice.ai-open-source-time-series-ai-for-developers/). +๐Ÿ“ข Read the Spice announcement blog post at [blog.spiceai.org](https://blog.spiceai.org/posts/2021/09/07/introducing-spice.ai-open-source-time-series-ai-for-developers/). -๐Ÿ“บ View a getting started walkthrough of Spice.ai in action [here](https://www.youtube.com/watch?v=DKBLjuAz_lI). +๐Ÿ“บ View a getting started walkthrough of Spice in action [here](https://www.youtube.com/watch?v=DKBLjuAz_lI). ## Features -The Spice.ai runtime is written in Golang and Python and runs as a container or microservice. It's deployable to any public cloud, on-premises, and edge. It is configured with a simple manifest and accessed by HTTP APIs. +The Spice runtime is written in Golang and Python and runs as a container or microservice. It's deployable to any public cloud, on-premises, and edge. It is configured with a simple manifest and accessed by HTTP APIs. -Spice.ai includes: +Spice includes: - A lightweight, portable ML runtime accessible by simple HTTP APIs, allowing developers to use their preferred languages and frameworks - A dashboard to visualize data and learning @@ -26,11 +26,11 @@ Spice.ai includes: ### Community-Driven Data Components -Spice.ai also includes a library of community-driven [data components](https://github.com/spiceai/data-components-contrib) for streaming and processing time series data, enabling developers to quickly and easily combine data with learning to create intelligent models. +Spice also includes a library of community-driven [data components](https://github.com/spiceai/data-components-contrib) for streaming and processing time series data, enabling developers to quickly and easily combine data with learning to create intelligent models. ### Spicepod registry -Modern developers build with the community by leveraging registries such as npm, NuGet, and pip. The Spice.ai platform includes [spicerack.org](https://spicerack.org), the registry for ML building blocks. +Modern developers build with the community by leveraging registries such as npm, NuGet, and pip. The Spice platform includes [spicerack.org](https://spicerack.org), the registry for ML building blocks. As the community shares their ML building blocks (aka Spicepods, or pods for short), developers can quickly add them to their Spice.ai applications enabling them to stream data and build learning into their applications quickly and easily. Initially, Spicepods contain simple definitions of how the app should learn, and eventually will enable the sharing and use of fully-trained models. @@ -86,30 +86,9 @@ Thank you for sharing this journey with us. ๐Ÿ™ -
-
-
Quickstarts
-

Quickstart tutorials to get started with Spice.ai quickly. ๐Ÿš€

- -
-
-
-
-
Samples
-

Learn about Spice.ai with in-depth samples.

- -
-

-
-
-
API
-

Documentation on the Spice.ai API.

- -
-
CLI
diff --git a/spiceaidocs/content/en/acknowledgements/_index.md b/spiceaidocs/content/en/acknowledgements/_index.md index a319740c..2974b8e6 100644 --- a/spiceaidocs/content/en/acknowledgements/_index.md +++ b/spiceaidocs/content/en/acknowledgements/_index.md @@ -3,3637 +3,139 @@ type: docs title: Open Source Acknowledgements linkTitle: Acknowledgements weight: 70 -description: "Spice.ai would like to thank the following open source projects for making this possible" +description: "Spice.ai acknowledges the following open source projects for making this project possible:" no_list: true --- -### Python Packages - -Keras-Preprocessing, 1.1.2, MIT License, Keras Team, https://github.com/keras-team/keras-preprocessing - -Markdown, 3.3.4, BSD License, Manfred Stienstra, Yuri takhteyev and Waylan limberg, https://Python-Markdown.github.io/ - -Werkzeug, 2.0.1, BSD License, Armin Ronacher, https://palletsprojects.com/p/werkzeug/ - -absl-py, 0.13.0, Apache Software License, The Abseil Authors, https://github.com/abseil/abseil-py - -astunparse, 1.6.3, BSD License, UNKNOWN, https://github.com/simonpercivall/astunparse - -attrs, 21.2.0, MIT License, Hynek Schlawack, https://www.attrs.org/ - -cachetools, 4.2.2, MIT License, Thomas Kemmer, https://github.com/tkem/cachetools/ - -certifi, 2021.5.30, Mozilla Public License 2.0 (MPL 2.0), Kenneth Reitz, https://certifiio.readthedocs.io/en/latest/ - -charset-normalizer, 2.0.4, MIT License, Ahmed TAHRI Ousret, https://github.com/ousret/charset_normalizer - -flatbuffers, 1.12, Apache Software License, FlatBuffers Contributors, https://google.github.io/flatbuffers/ - -gast, 0.4.0, BSD License, serge-sans-paille, https://github.com/serge-sans-paille/gast/ - -google-auth, 1.35.0, Apache Software License, Google Cloud Platform, https://github.com/googleapis/google-auth-library-python - -google-auth-oauthlib, 0.4.5, Apache Software License, Google Cloud Platform, https://github.com/GoogleCloudPlatform/google-auth-library-python-oauthlib - -google-pasta, 0.2.0, Apache Software License, Nick Smith, https://github.com/google/pasta - -grpcio, 1.34.1, Apache Software License, The gRPC Authors, https://grpc.io - -grpcio-tools, 1.34.1, Apache Software License, The gRPC Authors, https://grpc.io - -h5py, 3.1.0, BSD License, Andrew Collette, http://www.h5py.org - -humanize, 3.11.0, MIT License, Jason Moiron, https://github.com/jmoiron/humanize - -idna, 3.2, BSD License, Kim Davies, https://github.com/kjd/idna - -iniconfig, 1.1.1, MIT License, Ronny Pfannschmidt, Holger Krekel, http://github.com/RonnyPfannschmidt/iniconfig - -jupyter-client, 6.1.12, BSD License, Jupyter Development Team, https://jupyter.org - -jupyter-core, 4.7.1, BSD License, Jupyter Development Team, https://jupyter.org - -keras-nightly, 2.5.0.dev2021032900, Apache Software License, Google Inc., https://keras.io/ - -numpy, 1.19.5, BSD, Travis E. Oliphant et al., https://www.numpy.org - -oauthlib, 3.1.1, BSD License, The OAuthlib Community, https://github.com/oauthlib/oauthlib - -opt-einsum, 3.3.0, MIT, Daniel Smith, https://github.com/dgasmith/opt_einsum - -packaging, 21.0, Apache Software License; BSD License, Donald Stufft and individual contributors, https://github.com/pypa/packaging - -pandas, 1.3.2, BSD License, The Pandas Development Team, https://pandas.pydata.org - -pkg-resources, 0.0.0, UNKNOWN, UNKNOWN, UNKNOWN - -pluggy, 0.13.1, MIT License, Holger Krekel, https://github.com/pytest-dev/pluggy - -protobuf, 3.17.3, 3-Clause BSD License, UNKNOWN, https://developers.google.com/protocol-buffers/ - -psutil, 5.8.0, BSD License, Giampaolo Rodola, https://github.com/giampaolo/psutil - -py, 1.10.0, MIT License, holger krekel, Ronny Pfannschmidt, Benjamin Peterson and others, https://py.readthedocs.io/ - -pyasn1, 0.4.8, BSD License, Ilya Etingof, https://github.com/etingof/pyasn1 - -pyasn1-modules, 0.2.8, BSD License, Ilya Etingof, https://github.com/etingof/pyasn1-modules - -pyparsing, 2.4.7, MIT License, Paul McGuire, https://github.com/pyparsing/pyparsing/ - -pytest, 6.2.3, MIT License, Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others, https://docs.pytest.org/en/latest/ - -pytest-timeout, 1.4.2, DFSG approved; MIT License, Floris Bruynooghe, http://github.com/pytest-dev/pytest-timeout/ - -python-dateutil, 2.8.2, Apache Software License; BSD License, Gustavo Niemeyer, https://github.com/dateutil/dateutil - -pytz, 2021.1, MIT License, Stuart Bishop, http://pythonhosted.org/pytz - -pyzmq, 22.3.0, BSD License; GNU Library or Lesser General Public License (LGPL), Brian E. Granger, Min Ragan-Kelley, https://pyzmq.readthedocs.org - -requests, 2.26.0, Apache Software License, Kenneth Reitz, https://requests.readthedocs.io - -requests-oauthlib, 1.3.0, BSD License, Kenneth Reitz, https://github.com/requests/requests-oauthlib - -rsa, 4.7.2, Apache Software License, Sybren A. Stuvel, https://stuvel.eu/rsa - -six, 1.15.0, MIT License, Benjamin Peterson, https://github.com/benjaminp/six - -tensorboard, 2.6.0, Apache Software License, Google Inc., https://github.com/tensorflow/tensorboard - -tensorboard-data-server, 0.6.1, Apache Software License, Google Inc., https://github.com/tensorflow/tensorboard/tree/master/tensorboard/data/server - -tensorboard-plugin-wit, 1.8.0, Apache 2.0, Google Inc., https://whatif-tool.dev - -tensorflow, 2.5.1, Apache Software License, Google Inc., https://www.tensorflow.org/ - -tensorflow-estimator, 2.5.0, Apache Software License, Google Inc., https://www.tensorflow.org/ - -termcolor, 1.1.0, MIT License, Konstantin Lepa, http://pypi.python.org/pypi/termcolor - -toml, 0.10.2, MIT License, William Pearson, https://github.com/uiri/toml - -tornado, 6.1, Apache Software License, Facebook, http://www.tornadoweb.org/ - -traitlets, 5.1.0, BSD License, IPython Development Team, https://github.com/ipython/traitlets - -typing-extensions, 3.7.4.3, Python Software Foundation License, Guido van Rossum, Jukka Lehtosalo, Lukasz Langa, Michael Lee, https://github.com/python/typing/blob/master/typing_extensions/README.rst - -urllib3, 1.26.6, MIT License, Andrey Petrov, https://urllib3.readthedocs.io/ - -wrapt, 1.12.1, BSD License, Graham Dumpleton, https://github.com/GrahamDumpleton/wrapt - ### Go Modules -github.com/spf13/cast, https://github.com/spf13/cast/blob/master/LICENSE, MIT - -github.com/subosito/gotenv, https://github.com/subosito/gotenv/blob/master/LICENSE, MIT - -go.uber.org/zap, Unknown, MIT - -github.com/benbjohnson/immutable, https://github.com/benbjohnson/immutable/blob/master/LICENSE, MIT - -go.skia.org/infra/go, Unknown, BSD-3-Clause - -google.golang.org/grpc, Unknown, Apache-2.0 - -golang.org/x/net, Unknown, BSD-3-Clause - -github.com/pkg/errors, https://github.com/pkg/errors/blob/master/LICENSE, BSD-2-Clause - -github.com/google/flatbuffers/go, https://github.com/google/flatbuffers/blob/master/go/LICENSE.txt, Apache-2.0 - -github.com/google/go-cmp/cmp, https://github.com/google/go-cmp/blob/master/cmp/LICENSE, BSD-3-Clause - -github.com/andreyvit/diff, https://github.com/andreyvit/diff/blob/master/LICENSE, MIT - -github.com/opentracing/opentracing-go, https://github.com/opentracing/opentracing-go/blob/master/LICENSE, Apache-2.0 - -github.com/xeipuuv/gojsonpointer, https://github.com/xeipuuv/gojsonpointer/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/spiceai/data-components-contrib, https://github.com/spiceai/data-components-contrib/blob/master/LICENSE, MIT - -github.com/xeipuuv/gojsonschema, https://github.com/xeipuuv/gojsonschema/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/jcgregorio/logger, https://github.com/jcgregorio/logger/blob/master/LICENSE, Apache-2.0 - -github.com/hashicorp/errwrap, https://github.com/hashicorp/errwrap/blob/master/LICENSE, MPL-2.0 - -github.com/spf13/cobra, https://github.com/spf13/cobra/blob/master/LICENSE.txt, Apache-2.0 - -github.com/cespare/xxhash/v2, https://github.com/cespare/xxhash/blob/master/v2/LICENSE.txt, MIT - -github.com/fsnotify/fsnotify, https://github.com/fsnotify/fsnotify/blob/master/LICENSE, BSD-3-Clause - -gopkg.in/ini.v1, Unknown, Apache-2.0 - -github.com/influxdata/influxdb-client-go, https://github.com/influxdata/influxdb-client-go/blob/master/LICENSE, MIT - -github.com/uber/jaeger-client-go, https://github.com/uber/jaeger-client-go/blob/master/LICENSE, Apache-2.0 - -github.com/spiceai/spiceai, https://github.com/haardvark/spiceai/blob/master/LICENSE, Apache-2.0 - -github.com/spf13/jwalterweatherman, https://github.com/spf13/jwalterweatherman/blob/master/LICENSE, MIT - -gopkg.in/yaml.v2, Unknown, Apache-2.0 - -go.uber.org/multierr, Unknown, MIT - -golang.org/x/xerrors, Unknown, BSD-3-Clause - -github.com/gofrs/uuid, https://github.com/gofrs/uuid/blob/master/LICENSE, MIT - -github.com/zeebo/bencode, https://github.com/zeebo/bencode/blob/master/LICENSE, MIT - -golang.org/x/sys, Unknown, BSD-3-Clause - -golang.org/x/text, Unknown, BSD-3-Clause - -github.com/golang/protobuf, https://github.com/golang/protobuf/blob/master/LICENSE, BSD-3-Clause - -github.com/influxdata/flux, https://github.com/influxdata/flux/blob/master/LICENSE, MIT - -github.com/uber/jaeger-lib/metrics, https://github.com/uber/jaeger-lib/blob/master/metrics/LICENSE, Apache-2.0 - -github.com/jcgregorio/slog, https://github.com/jcgregorio/slog/blob/master/LICENSE, Apache-2.0 - -github.com/logrusorgru/aurora, https://github.com/logrusorgru/aurora/blob/master/LICENSE, Unlicense - -github.com/magiconair/properties, https://github.com/magiconair/properties/blob/master/LICENSE.md, BSD-2-Clause - -github.com/hashicorp/go-retryablehttp, https://github.com/hashicorp/go-retryablehttp/blob/master/LICENSE, MPL-2.0 - -github.com/pelletier/go-toml, https://github.com/pelletier/go-toml/blob/master/LICENSE, Apache-2.0 - -github.com/apache/arrow/go/arrow, https://github.com/apache/arrow/blob/master/go/arrow/LICENSE.txt, Apache-2.0 - -github.com/hashicorp/hcl, https://github.com/hashicorp/hcl/blob/master/LICENSE, MPL-2.0 - -github.com/hashicorp/go-multierror, https://github.com/hashicorp/go-multierror/blob/master/LICENSE, MPL-2.0 - -github.com/mitchellh/mapstructure, https://github.com/mitchellh/mapstructure/blob/master/LICENSE, MIT - -github.com/alecthomas/jsonschema, https://github.com/alecthomas/jsonschema/blob/master/COPYING, MIT - -github.com/xeipuuv/gojsonreference, https://github.com/xeipuuv/gojsonreference/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/hashicorp/go-cleanhttp, https://github.com/hashicorp/go-cleanhttp/blob/master/LICENSE, MPL-2.0 - -github.com/spf13/viper, https://github.com/spf13/viper/blob/master/LICENSE, MIT - -golang.org/x/mod/semver, Unknown, BSD-3-Clause - -github.com/influxdata/line-protocol, https://github.com/influxdata/line-protocol/blob/master/LICENSE, MIT - -github.com/spf13/afero, https://github.com/spf13/afero/blob/master/LICENSE.txt, Apache-2.0 - -google.golang.org/protobuf, Unknown, BSD-3-Clause - -google.golang.org/genproto/googleapis/rpc/status, Unknown, Apache-2.0 - -golang.org/x/sync/errgroup, Unknown, BSD-3-Clause - -go.uber.org/atomic, Unknown, MIT - -gopkg.in/natefinch/lumberjack.v2, Unknown, MIT - -github.com/apache/arrow/go/arrow/internal/cpu, https://github.com/apache/arrow/blob/master/go/arrow/internal/cpu/README.md, Apache-2.0 - -github.com/iancoleman/orderedmap, https://github.com/iancoleman/orderedmap/blob/master/LICENSE, MIT - -github.com/spf13/pflag, https://github.com/spf13/pflag/blob/master/LICENSE, BSD-3-Clause - -github.com/deepmap/oapi-codegen/pkg, https://github.com/deepmap/oapi-codegen/blob/master/pkg/LICENSE, Apache-2.0 - -github.com/sergi/go-diff/diffmatchpatch, https://github.com/sergi/go-diff/blob/master/diffmatchpatch/LICENSE, MIT - -github.com/influxdata/influxdb-client-go, https://github.com/influxdata/influxdb-client-go/blob/master/LICENSE, MIT - -google.golang.org/protobuf, Unknown, BSD-3-Clause - -go.uber.org/zap, Unknown, MIT - -github.com/apache/arrow/go/arrow, https://github.com/apache/arrow/blob/master/go/arrow/LICENSE.txt, Apache-2.0 - -github.com/google/go-cmp/cmp, https://github.com/google/go-cmp/blob/master/cmp/LICENSE, BSD-3-Clause - -github.com/hashicorp/go-multierror, https://github.com/hashicorp/go-multierror/blob/master/LICENSE, MPL-2.0 - -github.com/hashicorp/errwrap, https://github.com/hashicorp/errwrap/blob/master/LICENSE, MPL-2.0 - -github.com/fasthttp/router, https://github.com/fasthttp/router/blob/master/LICENSE, BSD-3-Clause - -github.com/savsgio/gotils, https://github.com/savsgio/gotils/blob/master/LICENSE, Apache-2.0 - -github.com/mitchellh/mapstructure, https://github.com/mitchellh/mapstructure/blob/master/LICENSE, MIT - -go.uber.org/multierr, Unknown, MIT - -github.com/iancoleman/orderedmap, https://github.com/iancoleman/orderedmap/blob/master/LICENSE, MIT - -github.com/xeipuuv/gojsonreference, https://github.com/xeipuuv/gojsonreference/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/hashicorp/hcl, https://github.com/hashicorp/hcl/blob/master/LICENSE, MPL-2.0 - -github.com/golang/protobuf, https://github.com/golang/protobuf/blob/master/LICENSE, BSD-3-Clause - -go.uber.org/atomic, Unknown, MIT - -gopkg.in/natefinch/lumberjack.v2, Unknown, MIT - -github.com/apache/arrow/go/arrow/internal/cpu, https://github.com/apache/arrow/blob/master/go/arrow/internal/cpu/README.md, Apache-2.0 - -github.com/andreyvit/diff, https://github.com/andreyvit/diff/blob/master/LICENSE, MIT - -gopkg.in/yaml.v2, Unknown, Apache-2.0 - -google.golang.org/grpc, Unknown, Apache-2.0 - -github.com/opentracing/opentracing-go, https://github.com/opentracing/opentracing-go/blob/master/LICENSE, Apache-2.0 - -github.com/alecthomas/jsonschema, https://github.com/alecthomas/jsonschema/blob/master/COPYING, MIT - -github.com/gofrs/uuid, https://github.com/gofrs/uuid/blob/master/LICENSE, MIT - -github.com/sergi/go-diff/diffmatchpatch, https://github.com/sergi/go-diff/blob/master/diffmatchpatch/LICENSE, MIT - -github.com/spiceai/spiceai, https://github.com/haardvark/spiceai/blob/master/LICENSE, Apache-2.0 - -gopkg.in/ini.v1, Unknown, Apache-2.0 - -golang.org/x/mod/semver, Unknown, BSD-3-Clause - -github.com/influxdata/flux, https://github.com/influxdata/flux/blob/master/LICENSE, MIT - -github.com/jcgregorio/logger, https://github.com/jcgregorio/logger/blob/master/LICENSE, Apache-2.0 - -github.com/jcgregorio/slog, https://github.com/jcgregorio/slog/blob/master/LICENSE, Apache-2.0 - -golang.org/x/sys, Unknown, BSD-3-Clause - -golang.org/x/net, Unknown, BSD-3-Clause - -google.golang.org/genproto/googleapis/rpc/status, Unknown, Apache-2.0 - -github.com/google/flatbuffers/go, https://github.com/google/flatbuffers/blob/master/go/LICENSE.txt, Apache-2.0 - -github.com/uber/jaeger-client-go, https://github.com/uber/jaeger-client-go/blob/master/LICENSE, Apache-2.0 - -github.com/uber/jaeger-lib/metrics, https://github.com/uber/jaeger-lib/blob/master/metrics/LICENSE, Apache-2.0 - -github.com/magiconair/properties, https://github.com/magiconair/properties/blob/master/LICENSE.md, BSD-2-Clause - -github.com/spiceai/data-components-contrib, https://github.com/spiceai/data-components-contrib/blob/master/LICENSE, MIT - -github.com/logrusorgru/aurora, https://github.com/logrusorgru/aurora/blob/master/LICENSE, Unlicense - -github.com/spf13/cobra, https://github.com/spf13/cobra/blob/master/LICENSE.txt, Apache-2.0 - -github.com/spf13/jwalterweatherman, https://github.com/spf13/jwalterweatherman/blob/master/LICENSE, MIT - -github.com/deepmap/oapi-codegen/pkg, https://github.com/deepmap/oapi-codegen/blob/master/pkg/LICENSE, Apache-2.0 - -github.com/pkg/errors, https://github.com/pkg/errors/blob/master/LICENSE, BSD-2-Clause - -github.com/benbjohnson/immutable, https://github.com/benbjohnson/immutable/blob/master/LICENSE, MIT - -github.com/xeipuuv/gojsonpointer, https://github.com/xeipuuv/gojsonpointer/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/valyala/fasthttp, https://github.com/valyala/fasthttp/blob/master/LICENSE, MIT - -github.com/fsnotify/fsnotify, https://github.com/fsnotify/fsnotify/blob/master/LICENSE, BSD-3-Clause - -golang.org/x/text, Unknown, BSD-3-Clause - -go.skia.org/infra/go, Unknown, BSD-3-Clause - -github.com/spf13/pflag, https://github.com/spf13/pflag/blob/master/LICENSE, BSD-3-Clause - -github.com/cespare/xxhash/v2, https://github.com/cespare/xxhash/blob/master/v2/LICENSE.txt, MIT - -golang.org/x/xerrors, Unknown, BSD-3-Clause - -github.com/pelletier/go-toml, https://github.com/pelletier/go-toml/blob/master/LICENSE, Apache-2.0 - -golang.org/x/sync/errgroup, Unknown, BSD-3-Clause - -github.com/valyala/bytebufferpool, https://github.com/valyala/bytebufferpool/blob/master/LICENSE, MIT - -github.com/xeipuuv/gojsonschema, https://github.com/xeipuuv/gojsonschema/blob/master/LICENSE-APACHE-2.0.txt, Apache-2.0 - -github.com/zeebo/bencode, https://github.com/zeebo/bencode/blob/master/LICENSE, MIT - -github.com/spf13/cast, https://github.com/spf13/cast/blob/master/LICENSE, MIT - -github.com/subosito/gotenv, https://github.com/subosito/gotenv/blob/master/LICENSE, MIT - -github.com/influxdata/line-protocol, https://github.com/influxdata/line-protocol/blob/master/LICENSE, MIT - -github.com/andybalholm/brotli, https://github.com/andybalholm/brotli/blob/master/LICENSE, MIT - -github.com/klauspost/compress, https://github.com/klauspost/compress/blob/master/LICENSE, BSD-3-Clause - -github.com/spf13/viper, https://github.com/spf13/viper/blob/master/LICENSE, MIT - -github.com/spf13/afero, https://github.com/spf13/afero/blob/master/LICENSE.txt, Apache-2.0 - - -### Node Packages - -babel/code-frame 7.10.4, MIT, https://github.com/babel/babel - - babel/code-frame 7.12.11, MIT, https://github.com/babel/babel - - babel/code-frame 7.12.13, MIT, https://github.com/babel/babel - - babel/compat-data 7.12.13, MIT, https://github.com/babel/babel - - babel/core 7.12.17, MIT, https://github.com/babel/babel - - babel/core 7.12.3, MIT, https://github.com/babel/babel - - babel/generator 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-annotate-as-pure 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-builder-binary-assignment-operator-visitor 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-compilation-targets 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-create-class-features-plugin 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-create-regexp-features-plugin 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-explode-assignable-expression 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-function-name 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-get-function-arity 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-hoist-variables 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-member-expression-to-functions 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-module-imports 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-module-transforms 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-optimise-call-expression 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-plugin-utils 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-remap-async-to-generator 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-replace-supers 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-simple-access 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-skip-transparent-expression-wrappers 7.12.1, MIT, https://github.com/babel/babel - - babel/helper-split-export-declaration 7.12.13, MIT, https://github.com/babel/babel - - babel/helper-validator-identifier 7.12.11, MIT, https://github.com/babel/babel - - babel/helper-validator-option 7.12.17, MIT, https://github.com/babel/babel - - babel/helper-wrap-function 7.12.13, MIT, https://github.com/babel/babel - - babel/helpers 7.12.17, MIT, https://github.com/babel/babel - - babel/highlight 7.12.13, MIT, https://github.com/babel/babel - - babel/parser 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-proposal-async-generator-functions 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-class-properties 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-proposal-class-properties 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-decorators 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-proposal-dynamic-import 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-proposal-export-namespace-from 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-json-strings 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-logical-assignment-operators 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-nullish-coalescing-operator 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-proposal-nullish-coalescing-operator 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-numeric-separator 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-proposal-numeric-separator 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-object-rest-spread 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-optional-catch-binding 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-optional-chaining 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-proposal-optional-chaining 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-proposal-private-methods 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-proposal-unicode-property-regex 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-async-generators 7.8.4, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-async-generators - - babel/plugin-syntax-bigint 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-bigint - - babel/plugin-syntax-class-properties 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-decorators 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-dynamic-import 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-dynamic-import - - babel/plugin-syntax-export-namespace-from 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-export-namespace-from - - babel/plugin-syntax-flow 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-import-meta 7.10.4, MIT, https://github.com/babel/babel - - babel/plugin-syntax-json-strings 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-json-strings - - babel/plugin-syntax-jsx 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-logical-assignment-operators 7.10.4, MIT, https://github.com/babel/babel - - babel/plugin-syntax-nullish-coalescing-operator 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-nullish-coalescing-operator - - babel/plugin-syntax-numeric-separator 7.10.4, MIT, https://github.com/babel/babel - - babel/plugin-syntax-object-rest-spread 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-object-rest-spread - - babel/plugin-syntax-optional-catch-binding 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-optional-catch-binding - - babel/plugin-syntax-optional-chaining 7.8.3, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-optional-chaining - - babel/plugin-syntax-top-level-await 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-syntax-typescript 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-arrow-functions 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-async-to-generator 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-block-scoped-functions 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-block-scoping 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-classes 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-computed-properties 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-destructuring 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-dotall-regex 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-duplicate-keys 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-exponentiation-operator 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-flow-strip-types 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-transform-for-of 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-function-name 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-literals 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-member-expression-literals 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-modules-amd 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-modules-commonjs 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-modules-systemjs 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-modules-umd 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-named-capturing-groups-regex 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-new-target 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-object-super 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-parameters 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-property-literals 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-constant-elements 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-display-name 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-display-name 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-jsx-development 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-jsx-self 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-jsx-source 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-jsx 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-transform-react-pure-annotations 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-transform-regenerator 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-reserved-words 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-runtime 7.12.1, MIT, https://github.com/babel/babel - - babel/plugin-transform-shorthand-properties 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-spread 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-sticky-regex 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-template-literals 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-typeof-symbol 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-typescript 7.12.17, MIT, https://github.com/babel/babel - - babel/plugin-transform-unicode-escapes 7.12.13, MIT, https://github.com/babel/babel - - babel/plugin-transform-unicode-regex 7.12.13, MIT, https://github.com/babel/babel - - babel/preset-env 7.12.1, MIT, https://github.com/babel/babel - - babel/preset-env 7.12.17, MIT, https://github.com/babel/babel - - babel/preset-modules 0.1.4, MIT, - - babel/preset-react 7.12.1, MIT, https://github.com/babel/babel - - babel/preset-react 7.12.13, MIT, https://github.com/babel/babel - - babel/preset-typescript 7.12.1, MIT, https://github.com/babel/babel - - babel/runtime-corejs3 7.12.18, MIT, https://github.com/babel/babel - - babel/runtime 7.12.1, MIT, https://github.com/babel/babel - - babel/runtime 7.12.18, MIT, https://github.com/babel/babel - - babel/runtime 7.15.3, MIT, https://github.com/babel/babel - - babel/template 7.12.13, MIT, https://github.com/babel/babel - - babel/traverse 7.12.17, MIT, https://github.com/babel/babel - - babel/types 7.12.17, MIT, https://github.com/babel/babel - - bcoe/v8-coverage 0.2.3, MIT, https://github.com/demurgos/v8-coverage - - cnakazawa/watch 1.0.4, Apache-2.0, https://github.com/mikeal/watch - - csstools/convert-colors 1.4.0, CC0-1.0, https://github.com/jonathantneal/convert-colors - - csstools/normalize.css 10.1.0, CC0-1.0, https://github.com/csstools/normalize.css - - eslint/eslintrc 0.3.0, MIT, https://github.com/eslint/eslintrc - - eslint/eslintrc 0.4.3, MIT, https://github.com/eslint/eslintrc - - hapi/address 2.1.4, BSD-3-Clause, https://github.com/hapijs/address - - hapi/bourne 1.3.2, BSD-3-Clause, https://github.com/hapijs/bourne - - hapi/hoek 8.5.1, BSD-3-Clause, https://github.com/hapijs/hoek - - hapi/joi 15.1.1, BSD-3-Clause, https://github.com/hapijs/joi - - hapi/topo 3.1.6, BSD-3-Clause, https://github.com/hapijs/topo - - humanwhocodes/config-array 0.5.0, Apache-2.0, https://github.com/humanwhocodes/config-array - - humanwhocodes/object-schema 1.2.0, BSD-3-Clause, https://github.com/humanwhocodes/object-schema - - istanbuljs/load-nyc-config 1.1.0, ISC, https://github.com/istanbuljs/load-nyc-config - - istanbuljs/schema 0.1.3, MIT, https://github.com/istanbuljs/schema - - jest/console 26.6.2, MIT, https://github.com/facebook/jest - - jest/core 26.6.3, MIT, https://github.com/facebook/jest - - jest/environment 26.6.2, MIT, https://github.com/facebook/jest - - jest/fake-timers 26.6.2, MIT, https://github.com/facebook/jest - - jest/globals 26.6.2, MIT, https://github.com/facebook/jest - - jest/reporters 26.6.2, MIT, https://github.com/facebook/jest - - jest/source-map 26.6.2, MIT, https://github.com/facebook/jest - - jest/test-result 26.6.2, MIT, https://github.com/facebook/jest - - jest/test-sequencer 26.6.3, MIT, https://github.com/facebook/jest - - jest/transform 26.6.2, MIT, https://github.com/facebook/jest - - jest/types 26.6.2, MIT, https://github.com/facebook/jest - - jest/types 27.0.6, MIT, https://github.com/facebook/jest - - nodelib/fs.scandir 2.1.4, MIT, https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.scandir - - nodelib/fs.stat 2.0.4, MIT, https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.stat - - nodelib/fs.walk 1.2.6, MIT, https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.walk - - npmcli/move-file 1.1.2, MIT, https://github.com/npm/move-file - - pmmmwh/react-refresh-webpack-plugin 0.4.3, MIT, https://github.com/pmmmwh/react-refresh-webpack-plugin - - rollup/plugin-node-resolve 7.1.3, MIT, https://github.com/rollup/plugins - - rollup/plugin-replace 2.4.1, MIT, https://github.com/rollup/plugins - - rollup/pluginutils 3.1.0, MIT, https://github.com/rollup/plugins - - sinonjs/commons 1.8.2, BSD-3-Clause, https://github.com/sinonjs/commons - - sinonjs/fake-timers 6.0.1, BSD-3-Clause, https://github.com/sinonjs/fake-timers - - surma/rollup-plugin-off-main-thread 1.4.2, Apache-2.0, https://github.com/surma/rollup-plugin-off-main-thread - - svgr/babel-plugin-add-jsx-attribute 5.4.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-add-jsx-attribute - - svgr/babel-plugin-remove-jsx-attribute 5.4.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-remove-jsx-attribute - - svgr/babel-plugin-remove-jsx-empty-expression 5.0.1, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-remove-jsx-empty-expression - - svgr/babel-plugin-replace-jsx-attribute-value 5.0.1, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-replace-jsx-attribute-value - - svgr/babel-plugin-svg-dynamic-title 5.4.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-svg-dynamic-title - - svgr/babel-plugin-svg-em-dimensions 5.4.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-svg-em-dimensions - - svgr/babel-plugin-transform-react-native-svg 5.4.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-transform-react-native-svg - - svgr/babel-plugin-transform-svg-component 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-plugin-transform-svg-component - - svgr/babel-preset 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/babel-preset - - svgr/core 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/core - - svgr/hast-util-to-babel-ast 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/hast-util-to-babel-ast - - svgr/plugin-jsx 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/plugin-jsx - - svgr/plugin-svgo 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/plugin-svgo - - svgr/webpack 5.5.0, MIT, https://github.com/gregberge/svgr/tree/master/packages/webpack - - testing-library/dom 7.31.2, MIT, https://github.com/testing-library/dom-testing-library - - testing-library/dom 8.1.0, MIT, https://github.com/testing-library/dom-testing-library - - testing-library/jest-dom 5.14.1, MIT, https://github.com/testing-library/jest-dom - - testing-library/react 11.2.7, MIT, https://github.com/testing-library/react-testing-library - - testing-library/user-event 12.8.3, MIT, https://github.com/testing-library/user-event - - types/anymatch 1.3.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/aria-query 4.2.2, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/babel__core 7.1.12, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/babel__generator 7.6.2, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/babel__template 7.4.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/babel__traverse 7.11.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/eslint 7.2.6, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/estree 0.0.39, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/estree 0.0.46, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/glob 7.1.3, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/graceful-fs 4.1.5, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/history 4.7.9, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/html-minifier-terser 5.1.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/istanbul-lib-coverage 2.0.3, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/istanbul-lib-report 3.0.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/istanbul-reports 3.0.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/jest 26.0.24, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/jest 27.0.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/json-schema 7.0.7, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/json-schema 7.0.9, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/json5 0.0.29, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/marked 3.0.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/minimatch 3.0.3, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/node 12.20.19, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/node 14.14.31, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/normalize-package-data 2.4.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/parse-json 4.0.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/prettier 2.2.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/prop-types 15.7.4, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/q 1.5.4, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/react-dom 17.0.9, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/react-router-dom 5.1.8, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/react-router 5.1.16, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/react-sparklines 1.7.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/react 17.0.19, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/resolve 0.0.8, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped.git - - types/scheduler 0.16.2, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/source-list-map 0.1.2, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/stack-utils 2.0.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/tapable 1.0.6, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/testing-library__jest-dom 5.14.1, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/uglify-js 3.12.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/webpack-sources 2.1.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/webpack 4.41.26, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/yargs-parser 20.2.0, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/yargs 15.0.13, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - types/yargs 16.0.4, MIT, https://github.com/DefinitelyTyped/DefinitelyTyped - - typescript-eslint/eslint-plugin 4.15.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/eslint-plugin 4.29.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/experimental-utils 3.10.1, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/experimental-utils 4.15.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/experimental-utils 4.29.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/parser 4.15.2, BSD-2-Clause, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/parser 4.29.2, BSD-2-Clause, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/scope-manager 4.15.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/scope-manager 4.29.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/types 3.10.1, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/types 4.15.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/types 4.29.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/typescript-estree 3.10.1, BSD-2-Clause, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/typescript-estree 4.15.2, BSD-2-Clause, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/typescript-estree 4.29.2, BSD-2-Clause, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/visitor-keys 3.10.1, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/visitor-keys 4.15.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - typescript-eslint/visitor-keys 4.29.2, MIT, https://github.com/typescript-eslint/typescript-eslint - - webassemblyjs/ast 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/floating-point-hex-parser 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/helper-api-error 1.9.0, MIT, - - webassemblyjs/helper-buffer 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/helper-code-frame 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/helper-fsm 1.9.0, ISC, - - webassemblyjs/helper-module-context 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/helper-wasm-bytecode 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/helper-wasm-section 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/ieee754 1.9.0, MIT, - - webassemblyjs/leb128 1.9.0, MIT, - - webassemblyjs/utf8 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wasm-edit 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wasm-gen 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wasm-opt 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wasm-parser 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wast-parser 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - webassemblyjs/wast-printer 1.9.0, MIT, https://github.com/xtuc/webassemblyjs - - xtuc/ieee754 1.2.0, BSD-3-Clause, https://github.com/feross/ieee754 - - xtuc/long 4.2.2, Apache-2.0, https://github.com/dcodeIO/long.js - -abab 2.0.5, BSD-3-Clause, https://github.com/jsdom/abab - -accepts 1.3.7, MIT, https://github.com/jshttp/accepts - -acorn-globals 6.0.0, MIT, https://github.com/ForbesLindesay/acorn-globals - -acorn-jsx 5.3.1, MIT, https://github.com/acornjs/acorn-jsx - -acorn-node 1.8.2, Apache-2.0, https://github.com/browserify/acorn-node - -acorn-walk 7.2.0, MIT, https://github.com/acornjs/acorn - -acorn 6.4.2, MIT, https://github.com/acornjs/acorn - -acorn 7.4.1, MIT, https://github.com/acornjs/acorn - -address 1.1.2, MIT, https://github.com/node-modules/address - -adjust-sourcemap-loader 3.0.0, MIT, https://github.com/bholloway/adjust-sourcemap-loader - -aggregate-error 3.1.0, MIT, https://github.com/sindresorhus/aggregate-error - -ajv-errors 1.0.1, MIT, https://github.com/epoberezkin/ajv-errors - -ajv-keywords 3.5.2, MIT, https://github.com/epoberezkin/ajv-keywords - -ajv 6.12.6, MIT, https://github.com/ajv-validator/ajv - -ajv 7.1.1, MIT, https://github.com/ajv-validator/ajv - -ajv 8.6.2, MIT, https://github.com/ajv-validator/ajv - -alphanum-sort 1.0.2, MIT, https://github.com/TrySound/alphanum-sort - -ansi-colors 3.2.4, MIT, https://github.com/doowb/ansi-colors - -ansi-colors 4.1.1, MIT, https://github.com/doowb/ansi-colors - -ansi-escapes 4.3.1, MIT, https://github.com/sindresorhus/ansi-escapes - -ansi-html 0.0.7, Apache-2.0, https://github.com/Tjatse/ansi-html - -ansi-regex 2.1.1, MIT, https://github.com/chalk/ansi-regex - -ansi-regex 4.1.0, MIT, https://github.com/chalk/ansi-regex - -ansi-regex 5.0.0, MIT, https://github.com/chalk/ansi-regex - -ansi-styles 2.2.1, MIT, https://github.com/chalk/ansi-styles - -ansi-styles 3.2.1, MIT, https://github.com/chalk/ansi-styles - -ansi-styles 4.3.0, MIT, https://github.com/chalk/ansi-styles - -ansi-styles 5.2.0, MIT, https://github.com/chalk/ansi-styles - -anymatch 2.0.0, ISC, https://github.com/micromatch/anymatch - -anymatch 3.1.1, ISC, https://github.com/micromatch/anymatch - -anymatch 3.1.2, ISC, https://github.com/micromatch/anymatch - -aproba 1.2.0, ISC, https://github.com/iarna/aproba - -arg 5.0.1, MIT, https://github.com/vercel/arg - -argparse 1.0.10, MIT, https://github.com/nodeca/argparse - -aria-query 4.2.2, Apache-2.0, https://github.com/A11yance/aria-query - -arity-n 1.0.4, MIT, https://github.com/stoeffel/arityN - -arr-diff 4.0.0, MIT, https://github.com/jonschlinkert/arr-diff - -arr-flatten 1.1.0, MIT, https://github.com/jonschlinkert/arr-flatten - -arr-union 3.1.0, MIT, https://github.com/jonschlinkert/arr-union - -array-flatten 1.1.1, MIT, https://github.com/blakeembrey/array-flatten - -array-flatten 2.1.2, MIT, https://github.com/blakeembrey/array-flatten - -array-includes 3.1.3, MIT, https://github.com/es-shims/array-includes - -array-union 1.0.2, MIT, https://github.com/sindresorhus/array-union - -array-union 2.1.0, MIT, https://github.com/sindresorhus/array-union - -array-uniq 1.0.3, MIT, https://github.com/sindresorhus/array-uniq - -array-unique 0.3.2, MIT, https://github.com/jonschlinkert/array-unique - -array.prototype.flat 1.2.4, MIT, https://github.com/es-shims/Array.prototype.flat - -array.prototype.flatmap 1.2.4, MIT, https://github.com/es-shims/Array.prototype.flatMap - -arrify 2.0.1, MIT, https://github.com/sindresorhus/arrify - -asap 2.0.6, MIT, https://github.com/kriskowal/asap - -asn1.js 5.4.1, MIT, https://github.com/indutny/asn1.js - -asn1 0.2.4, MIT, https://github.com/joyent/node-asn1 - -assert-plus 1.0.0, MIT, https://github.com/mcavage/node-assert-plus - -assert 1.5.0, MIT, https://github.com/browserify/commonjs-assert - -assign-symbols 1.0.0, MIT, https://github.com/jonschlinkert/assign-symbols - -ast-types-flow 0.0.7, ISC, https://github.com/kyldvs/ast-types-flow - -astral-regex 2.0.0, MIT, https://github.com/kevva/astral-regex - -async-each 1.0.3, MIT, https://github.com/paulmillr/async-each - -async-limiter 1.0.1, MIT, https://github.com/strml/async-limiter - -async 2.6.3, MIT, https://github.com/caolan/async - -asynckit 0.4.0, MIT, https://github.com/alexindigo/asynckit - -at-least-node 1.0.0, ISC, https://github.com/RyanZim/at-least-node - -atob 2.1.2, (MIT OR Apache-2.0), git://git.coolaj86.com/coolaj86/atob.js - -autoprefixer 10.3.1, MIT, https://github.com/postcss/autoprefixer - -autoprefixer 9.8.6, MIT, https://github.com/postcss/autoprefixer - -aws-sign2 0.7.0, Apache-2.0, https://github.com/mikeal/aws-sign - -aws4 1.11.0, MIT, https://github.com/mhart/aws4 - -axe-core 4.1.2, MPL-2.0, https://github.com/dequelabs/axe-core - -axobject-query 2.2.0, Apache-2.0, https://github.com/A11yance/axobject-query - -babel-eslint 10.1.0, MIT, https://github.com/babel/babel-eslint - -babel-extract-comments 1.0.0, MIT, https://github.com/jonschlinkert/babel-extract-comments - -babel-jest 26.6.3, MIT, https://github.com/facebook/jest - -babel-loader 8.1.0, MIT, https://github.com/babel/babel-loader - -babel-plugin-dynamic-import-node 2.3.3, MIT, https://github.com/airbnb/babel-plugin-dynamic-import-node - -babel-plugin-istanbul 6.0.0, BSD-3-Clause, https://github.com/istanbuljs/babel-plugin-istanbul - -babel-plugin-jest-hoist 26.6.2, MIT, https://github.com/facebook/jest - -babel-plugin-macros 2.8.0, MIT, https://github.com/kentcdodds/babel-plugin-macros - -babel-plugin-named-asset-import 0.3.7, MIT, https://github.com/facebook/create-react-app - -babel-plugin-syntax-object-rest-spread 6.13.0, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-object-rest-spread - -babel-plugin-transform-object-rest-spread 6.26.0, MIT, https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-object-rest-spread - -babel-plugin-transform-react-remove-prop-types 0.4.24, MIT, https://github.com/oliviertassinari/babel-plugin-transform-react-remove-prop-types - -babel-preset-current-node-syntax 1.0.1, MIT, https://github.com/nicolo-ribaudo/babel-preset-current-node-syntax - -babel-preset-jest 26.6.2, MIT, https://github.com/facebook/jest - -babel-preset-react-app 10.0.0, MIT, https://github.com/facebook/create-react-app - -babel-runtime 6.26.0, MIT, https://github.com/babel/babel/tree/master/packages/babel-runtime - -babylon 6.18.0, MIT, https://github.com/babel/babylon - -balanced-match 1.0.0, MIT, https://github.com/juliangruber/balanced-match - -base64-js 1.5.1, MIT, https://github.com/beatgammit/base64-js - -base 0.11.2, MIT, https://github.com/node-base/base - -batch 0.6.1, MIT, https://github.com/visionmedia/batch - -bcrypt-pbkdf 1.0.2, BSD-3-Clause, https://github.com/joyent/node-bcrypt-pbkdf - -bfj 7.0.2, MIT, git+https://gitlab.com/philbooth/bfj - -big.js 5.2.2, MIT, https://github.com/MikeMcl/big.js - -binary-extensions 1.13.1, MIT, https://github.com/sindresorhus/binary-extensions - -binary-extensions 2.2.0, MIT, https://github.com/sindresorhus/binary-extensions - -bluebird 3.7.2, MIT, https://github.com/petkaantonov/bluebird - -bn.js 4.11.9, MIT, https://github.com/indutny/bn.js - -bn.js 5.1.3, MIT, https://github.com/indutny/bn.js - -body-parser 1.19.0, MIT, https://github.com/expressjs/body-parser - -bonjour 3.5.0, MIT, https://github.com/watson/bonjour - -boolbase 1.0.0, ISC, https://github.com/fb55/boolbase - -brace-expansion 1.1.11, MIT, https://github.com/juliangruber/brace-expansion - -braces 2.3.2, MIT, https://github.com/micromatch/braces - -braces 3.0.2, MIT, https://github.com/micromatch/braces - -brorand 1.1.0, MIT, https://github.com/indutny/brorand - -browser-process-hrtime 1.0.0, BSD-2-Clause, https://github.com/kumavis/browser-process-hrtime - -browserify-aes 1.2.0, MIT, https://github.com/crypto-browserify/browserify-aes - -browserify-cipher 1.0.1, MIT, https://github.com/crypto-browserify/browserify-cipher - -browserify-des 1.0.2, MIT, https://github.com/crypto-browserify/browserify-des - -browserify-rsa 4.1.0, MIT, https://github.com/crypto-browserify/browserify-rsa - -browserify-sign 4.2.1, ISC, https://github.com/crypto-browserify/browserify-sign - -browserify-zlib 0.2.0, MIT, https://github.com/devongovett/browserify-zlib - -browserslist 4.14.2, MIT, https://github.com/browserslist/browserslist - -browserslist 4.16.3, MIT, https://github.com/browserslist/browserslist - -browserslist 4.16.8, MIT, https://github.com/browserslist/browserslist - -bser 2.1.1, Apache-2.0, https://github.com/facebook/watchman - -buffer-from 1.1.1, MIT, https://github.com/LinusU/buffer-from - -buffer-indexof 1.1.1, MIT, https://github.com/soldair/node-buffer-indexof - -buffer-xor 1.0.3, MIT, https://github.com/crypto-browserify/buffer-xor - -buffer 4.9.2, MIT, https://github.com/feross/buffer - -builtin-modules 3.2.0, MIT, https://github.com/sindresorhus/builtin-modules - -builtin-status-codes 3.0.0, MIT, https://github.com/bendrucker/builtin-status-codes - -bytes 3.0.0, MIT, https://github.com/visionmedia/bytes.js - -bytes 3.1.0, MIT, https://github.com/visionmedia/bytes.js - -cacache 12.0.4, ISC, https://github.com/npm/cacache - -cacache 15.0.5, ISC, https://github.com/npm/cacache - -cache-base 1.0.1, MIT, https://github.com/jonschlinkert/cache-base - -call-bind 1.0.2, MIT, https://github.com/ljharb/call-bind - -caller-callsite 2.0.0, MIT, https://github.com/sindresorhus/caller-callsite - -caller-path 2.0.0, MIT, https://github.com/sindresorhus/caller-path - -callsites 2.0.0, MIT, https://github.com/sindresorhus/callsites - -callsites 3.1.0, MIT, https://github.com/sindresorhus/callsites - -camel-case 4.1.2, MIT, https://github.com/blakeembrey/change-case - -camelcase-css 2.0.1, MIT, https://github.com/stevenvachon/camelcase-css - -camelcase 5.3.1, MIT, https://github.com/sindresorhus/camelcase - -camelcase 6.2.0, MIT, https://github.com/sindresorhus/camelcase - -caniuse-api 3.0.0, MIT, https://github.com/nyalab/caniuse-api - -caniuse-lite 1.0.30001251, CC-BY-4.0, https://github.com/browserslist/caniuse-lite - -capture-exit 2.0.0, ISC, https://github.com/stefanpenner/capture-exit - -case-sensitive-paths-webpack-plugin 2.3.0, MIT, https://github.com/Urthen/case-sensitive-paths-webpack-plugin - -caseless 0.12.0, Apache-2.0, https://github.com/mikeal/caseless - -chalk 1.1.3, MIT, https://github.com/chalk/chalk - -chalk 2.4.2, MIT, https://github.com/chalk/chalk - -chalk 3.0.0, MIT, https://github.com/chalk/chalk - -chalk 4.1.0, MIT, https://github.com/chalk/chalk - -chalk 4.1.2, MIT, https://github.com/chalk/chalk - -char-regex 1.0.2, MIT, https://github.com/Richienb/char-regex - -chart.js 3.5.1, MIT, https://github.com/chartjs/Chart.js - -check-types 11.1.2, MIT, git+https://gitlab.com/philbooth/check-types.js - -chokidar-cli 3.0.0, MIT, https://github.com/open-npm-tools/chokidar-cli - -chokidar 2.1.8, MIT, https://github.com/paulmillr/chokidar - -chokidar 3.5.1, MIT, https://github.com/paulmillr/chokidar - -chokidar 3.5.2, MIT, https://github.com/paulmillr/chokidar - -chownr 1.1.4, ISC, https://github.com/isaacs/chownr - -chownr 2.0.0, ISC, https://github.com/isaacs/chownr - -chrome-trace-event 1.0.2, MIT, github.com:samccone/chrome-trace-event - -ci-info 2.0.0, MIT, https://github.com/watson/ci-info - -cipher-base 1.0.4, MIT, https://github.com/crypto-browserify/cipher-base - -cjs-module-lexer 0.6.0, MIT, https://github.com/guybedford/cjs-module-lexer - -class-utils 0.3.6, MIT, https://github.com/jonschlinkert/class-utils - -clean-css 4.2.3, MIT, https://github.com/jakubpawlowicz/clean-css - -clean-stack 2.2.0, MIT, https://github.com/sindresorhus/clean-stack - -cliui 5.0.0, ISC, https://github.com/yargs/cliui - -cliui 6.0.0, ISC, https://github.com/yargs/cliui - -co 4.6.0, MIT, https://github.com/tj/co - -coa 2.0.2, MIT, https://github.com/veged/coa - -collect-v8-coverage 1.0.1, MIT, https://github.com/SimenB/collect-v8-coverage - -collection-visit 1.0.0, MIT, https://github.com/jonschlinkert/collection-visit - -color-convert 1.9.3, MIT, https://github.com/Qix-/color-convert - -color-convert 2.0.1, MIT, https://github.com/Qix-/color-convert - -color-name 1.1.3, MIT, https://github.com/dfcreative/color-name - -color-name 1.1.4, MIT, https://github.com/colorjs/color-name - -color-string 1.6.0, MIT, https://github.com/Qix-/color-string - -color 3.1.3, MIT, https://github.com/Qix-/color - -color 3.2.1, MIT, https://github.com/Qix-/color - -colorette 1.3.0, MIT, https://github.com/jorgebucaran/colorette - -combined-stream 1.0.8, MIT, https://github.com/felixge/node-combined-stream - -commander 2.20.3, MIT, https://github.com/tj/commander.js - -commander 4.1.1, MIT, https://github.com/tj/commander.js - -commander 6.2.1, MIT, https://github.com/tj/commander.js - -common-tags 1.8.0, MIT, https://github.com/declandewet/common-tags - -commondir 1.0.1, MIT, https://github.com/substack/node-commondir - -component-emitter 1.3.0, MIT, https://github.com/component/emitter - -compose-function 3.0.3, MIT, https://github.com/stoeffel/compose-function - -compressible 2.0.18, MIT, https://github.com/jshttp/compressible - -compression 1.7.4, MIT, https://github.com/expressjs/compression - -concat-map 0.0.1, MIT, https://github.com/substack/node-concat-map - -concat-stream 1.6.2, MIT, https://github.com/maxogden/concat-stream - -confusing-browser-globals 1.0.10, MIT, https://github.com/facebook/create-react-app - -connect-history-api-fallback 1.6.0, MIT, https://github.com/bripkens/connect-history-api-fallback - -console-browserify 1.2.0, MIT, https://github.com/browserify/console-browserify - -constants-browserify 1.0.0, MIT, https://github.com/juliangruber/constants-browserify - -contains-path 0.1.0, MIT, https://github.com/jonschlinkert/contains-path - -content-disposition 0.5.3, MIT, https://github.com/jshttp/content-disposition - -content-type 1.0.4, MIT, https://github.com/jshttp/content-type - -convert-source-map 0.3.5, MIT, https://github.com/thlorenz/convert-source-map - -convert-source-map 1.7.0, MIT, https://github.com/thlorenz/convert-source-map - -cookie-signature 1.0.6, MIT, https://github.com/visionmedia/node-cookie-signature - -cookie 0.4.0, MIT, https://github.com/jshttp/cookie - -copy-concurrently 1.0.5, ISC, https://github.com/npm/copy-concurrently - -copy-descriptor 0.1.1, MIT, https://github.com/jonschlinkert/copy-descriptor - -core-js-compat 3.9.0, MIT, https://github.com/zloirock/core-js - -core-js-pure 3.9.0, MIT, https://github.com/zloirock/core-js - -core-js 2.6.12, MIT, https://github.com/zloirock/core-js - -core-js 3.9.0, MIT, https://github.com/zloirock/core-js - -core-util-is 1.0.2, MIT, https://github.com/isaacs/core-util-is - -cosmiconfig 5.2.1, MIT, https://github.com/davidtheclark/cosmiconfig - -cosmiconfig 6.0.0, MIT, https://github.com/davidtheclark/cosmiconfig - -cosmiconfig 7.0.0, MIT, https://github.com/davidtheclark/cosmiconfig - -create-ecdh 4.0.4, MIT, https://github.com/crypto-browserify/createECDH - -create-hash 1.2.0, MIT, https://github.com/crypto-browserify/createHash - -create-hmac 1.1.7, MIT, https://github.com/crypto-browserify/createHmac - -cross-spawn 4.0.2, MIT, https://github.com/IndigoUnited/node-cross-spawn - -cross-spawn 6.0.5, MIT, https://github.com/moxystudio/node-cross-spawn - -cross-spawn 7.0.3, MIT, https://github.com/moxystudio/node-cross-spawn - -crypto-browserify 3.12.0, MIT, https://github.com/crypto-browserify/crypto-browserify - -crypto-random-string 1.0.0, MIT, https://github.com/sindresorhus/crypto-random-string - -css-blank-pseudo 0.1.4, CC0-1.0, https://github.com/csstools/css-blank-pseudo - -css-color-names 0.0.4, MIT, https://github.com/bahamas10/css-color-names - -css-declaration-sorter 4.0.1, MIT, https://github.com/Siilwyn/css-declaration-sorter - -css-has-pseudo 0.10.0, CC0-1.0, https://github.com/csstools/css-has-pseudo - -css-loader 4.3.0, MIT, https://github.com/webpack-contrib/css-loader - -css-prefers-color-scheme 3.1.1, CC0-1.0, https://github.com/csstools/css-prefers-color-scheme - -css-select-base-adapter 0.1.1, MIT, https://github.com/nrkn/css-select-base-adapter - -css-select 2.1.0, BSD-2-Clause, https://github.com/fb55/css-select - -css-tree 1.0.0-alpha.37, MIT, https://github.com/csstree/csstree - -css-tree 1.1.2, MIT, https://github.com/csstree/csstree - -css-unit-converter 1.1.2, MIT, https://github.com/andyjansson/css-unit-converter - -css-what 3.4.2, BSD-2-Clause, https://github.com/fb55/css-what - -css.escape 1.5.1, MIT, https://github.com/mathiasbynens/CSS.escape - -css 2.2.4, MIT, https://github.com/reworkcss/css - -css 3.0.0, MIT, https://github.com/reworkcss/css - -cssdb 4.4.0, CC0-1.0, https://github.com/csstools/cssdb - -cssesc 2.0.0, MIT, https://github.com/mathiasbynens/cssesc - -cssesc 3.0.0, MIT, https://github.com/mathiasbynens/cssesc - -cssnano-preset-default 4.0.7, MIT, https://github.com/cssnano/cssnano - -cssnano-util-get-arguments 4.0.0, MIT, https://github.com/cssnano/cssnano - -cssnano-util-get-match 4.0.0, MIT, https://github.com/cssnano/cssnano - -cssnano-util-raw-cache 4.0.1, MIT, https://github.com/cssnano/cssnano - -cssnano-util-same-parent 4.0.1, MIT, https://github.com/cssnano/cssnano - -cssnano 4.1.10, MIT, https://github.com/cssnano/cssnano - -csso 4.2.0, MIT, https://github.com/css/csso - -cssom 0.3.8, MIT, https://github.com/NV/CSSOM - -cssom 0.4.4, MIT, https://github.com/NV/CSSOM - -cssstyle 2.3.0, MIT, https://github.com/jsdom/cssstyle - -csstype 3.0.8, MIT, https://github.com/frenic/csstype - -cyclist 1.0.1, MIT, https://github.com/mafintosh/cyclist - -d 1.0.1, ISC, https://github.com/medikoo/d - -damerau-levenshtein 1.0.6, BSD-2-Clause, https://github.com/tad-lispy/node-damerau-levenshtein - -dashdash 1.14.1, MIT, https://github.com/trentm/node-dashdash - -data-urls 2.0.0, MIT, https://github.com/jsdom/data-urls - -debug 2.6.9, MIT, https://github.com/visionmedia/debug - -debug 3.2.7, MIT, https://github.com/visionmedia/debug - -debug 4.3.1, MIT, https://github.com/visionmedia/debug - -debug 4.3.2, MIT, https://github.com/visionmedia/debug - -decamelize 1.2.0, MIT, https://github.com/sindresorhus/decamelize - -decimal.js 10.2.1, MIT, https://github.com/MikeMcl/decimal.js - -decode-uri-component 0.2.0, MIT, https://github.com/SamVerschueren/decode-uri-component - -dedent 0.7.0, MIT, https://github.com/dmnd/dedent - -deep-equal 1.1.1, MIT, https://github.com/substack/node-deep-equal - -deep-is 0.1.3, MIT, https://github.com/thlorenz/deep-is - -deepmerge 4.2.2, MIT, https://github.com/TehShrike/deepmerge - -default-gateway 4.2.0, BSD-2-Clause, https://github.com/silverwind/default-gateway - -define-properties 1.1.3, MIT, https://github.com/ljharb/define-properties - -define-property 0.2.5, MIT, https://github.com/jonschlinkert/define-property - -define-property 1.0.0, MIT, https://github.com/jonschlinkert/define-property - -define-property 2.0.2, MIT, https://github.com/jonschlinkert/define-property - -defined 1.0.0, MIT, https://github.com/substack/defined - -del 4.1.1, MIT, https://github.com/sindresorhus/del - -delayed-stream 1.0.0, MIT, https://github.com/felixge/node-delayed-stream - -depd 1.1.2, MIT, https://github.com/dougwilson/nodejs-depd - -dequal 2.0.2, MIT, https://github.com/lukeed/dequal - -des.js 1.0.1, MIT, https://github.com/indutny/des.js - -destroy 1.0.4, MIT, https://github.com/stream-utils/destroy - -detect-newline 3.1.0, MIT, https://github.com/sindresorhus/detect-newline - -detect-node 2.0.4, ISC, https://github.com/iliakan/detect-node - -detect-port-alt 1.1.6, MIT, https://github.com/node-modules/detect-port - -detective 5.2.0, MIT, https://github.com/browserify/detective - -didyoumean 1.2.2, Apache-2.0, https://github.com/dcporter/didyoumean.js - -diff-sequences 26.6.2, MIT, https://github.com/facebook/jest - -diff-sequences 27.0.6, MIT, https://github.com/facebook/jest - -diffie-hellman 5.0.3, MIT, https://github.com/crypto-browserify/diffie-hellman - -dir-glob 3.0.1, MIT, https://github.com/kevva/dir-glob - -dlv 1.1.3, MIT, https://github.com/developit/dlv - -dns-equal 1.0.0, MIT, https://github.com/watson/dns-equal - -dns-packet 1.3.4, MIT, https://github.com/mafintosh/dns-packet - -dns-txt 2.0.2, MIT, https://github.com/watson/dns-txt - -doctrine 1.5.0, BSD, https://github.com/eslint/doctrine - -doctrine 2.1.0, Apache-2.0, https://github.com/eslint/doctrine - -doctrine 3.0.0, Apache-2.0, https://github.com/eslint/doctrine - -dom-accessibility-api 0.5.7, MIT, https://github.com/eps1lon/dom-accessibility-api - -dom-converter 0.2.0, MIT, https://github.com/AriaMinaei/dom-converter - -dom-serializer 0.2.2, MIT, https://github.com/cheeriojs/dom-renderer - -domain-browser 1.2.0, MIT, https://github.com/bevry/domain-browser - -domelementtype 1.3.1, BSD-2-Clause, https://github.com/fb55/domelementtype - -domelementtype 2.1.0, BSD-2-Clause, https://github.com/fb55/domelementtype - -domexception 2.0.1, MIT, https://github.com/jsdom/domexception - -domhandler 2.4.2, BSD-2-Clause, https://github.com/fb55/DomHandler - -domutils 1.7.0, BSD-2-Clause, https://github.com/FB55/domutils - -dot-case 3.0.4, MIT, https://github.com/blakeembrey/change-case - -dot-prop 5.3.0, MIT, https://github.com/sindresorhus/dot-prop - -dotenv-expand 5.1.0, BSD-2-Clause, - -dotenv 8.2.0, BSD-2-Clause, https://github.com/motdotla/dotenv - -duplexer 0.1.2, MIT, https://github.com/Raynos/duplexer - -duplexify 3.7.1, MIT, https://github.com/mafintosh/duplexify - -ecc-jsbn 0.1.2, MIT, https://github.com/quartzjer/ecc-jsbn - -ee-first 1.1.1, MIT, https://github.com/jonathanong/ee-first - -ejs 2.7.4, Apache-2.0, https://github.com/mde/ejs - -electron-to-chromium 1.3.671, ISC, https://github.com/kilian/electron-to-chromium - -electron-to-chromium 1.3.812, ISC, https://github.com/kilian/electron-to-chromium - -elliptic 6.5.4, MIT, https://github.com/indutny/elliptic - -emittery 0.7.2, MIT, https://github.com/sindresorhus/emittery - -emoji-regex 7.0.3, MIT, https://github.com/mathiasbynens/emoji-regex - -emoji-regex 8.0.0, MIT, https://github.com/mathiasbynens/emoji-regex - -emoji-regex 9.2.1, MIT, https://github.com/mathiasbynens/emoji-regex - -emojis-list 2.1.0, MIT, https://github.com/kikobeats/emojis-list - -emojis-list 3.0.0, MIT, https://github.com/kikobeats/emojis-list - -encodeurl 1.0.2, MIT, https://github.com/pillarjs/encodeurl - -end-of-stream 1.4.4, MIT, https://github.com/mafintosh/end-of-stream - -enhanced-resolve 4.5.0, MIT, https://github.com/webpack/enhanced-resolve - -enquirer 2.3.6, MIT, https://github.com/enquirer/enquirer - -entities 1.1.2, BSD-2-Clause, https://github.com/fb55/entities - -entities 2.2.0, BSD-2-Clause, https://github.com/fb55/entities - -errno 0.1.8, MIT, https://github.com/rvagg/node-errno - -error-ex 1.3.2, MIT, https://github.com/qix-/node-error-ex - -error-stack-parser 2.0.6, MIT, https://github.com/stacktracejs/error-stack-parser - -es-abstract 1.17.7, MIT, https://github.com/ljharb/es-abstract - -es-abstract 1.18.0-next.2, MIT, https://github.com/ljharb/es-abstract - -es-abstract 1.18.5, MIT, https://github.com/ljharb/es-abstract - -es-to-primitive 1.2.1, MIT, https://github.com/ljharb/es-to-primitive - -es5-ext 0.10.53, ISC, https://github.com/medikoo/es5-ext - -es6-iterator 2.0.3, MIT, https://github.com/medikoo/es6-iterator - -es6-symbol 3.1.3, ISC, https://github.com/medikoo/es6-symbol - -escalade 3.1.1, MIT, https://github.com/lukeed/escalade - -escape-html 1.0.3, MIT, https://github.com/component/escape-html - -escape-string-regexp 1.0.5, MIT, https://github.com/sindresorhus/escape-string-regexp - -escape-string-regexp 2.0.0, MIT, https://github.com/sindresorhus/escape-string-regexp - -escape-string-regexp 4.0.0, MIT, https://github.com/sindresorhus/escape-string-regexp - -escodegen 1.14.3, BSD-2-Clause, https://github.com/estools/escodegen - -eslint-config-prettier 8.3.0, MIT, https://github.com/prettier/eslint-config-prettier - -eslint-config-react-app 6.0.0, MIT, https://github.com/facebook/create-react-app - -eslint-import-resolver-node 0.3.4, MIT, https://github.com/benmosher/eslint-plugin-import - -eslint-module-utils 2.6.0, MIT, https://github.com/benmosher/eslint-plugin-import - -eslint-plugin-flowtype 5.2.2, BSD-3-Clause, https://github.com/gajus/eslint-plugin-flowtype - -eslint-plugin-import 2.22.1, MIT, https://github.com/benmosher/eslint-plugin-import - -eslint-plugin-jest 24.1.5, MIT, https://github.com/jest-community/eslint-plugin-jest - -eslint-plugin-jsx-a11y 6.4.1, MIT, https://github.com/evcohen/eslint-plugin-jsx-a11y - -eslint-plugin-prettier 3.4.0, MIT, https://github.com/prettier/eslint-plugin-prettier - -eslint-plugin-react-hooks 4.2.0, MIT, https://github.com/facebook/react - -eslint-plugin-react 7.22.0, MIT, https://github.com/yannickcr/eslint-plugin-react - -eslint-plugin-react 7.24.0, MIT, https://github.com/yannickcr/eslint-plugin-react - -eslint-plugin-testing-library 3.10.1, MIT, https://github.com/testing-library/eslint-plugin-testing-library - -eslint-scope 4.0.3, BSD-2-Clause, https://github.com/eslint/eslint-scope - -eslint-scope 5.1.1, BSD-2-Clause, https://github.com/eslint/eslint-scope - -eslint-utils 2.1.0, MIT, https://github.com/mysticatea/eslint-utils - -eslint-utils 3.0.0, MIT, https://github.com/mysticatea/eslint-utils - -eslint-visitor-keys 1.3.0, Apache-2.0, https://github.com/eslint/eslint-visitor-keys - -eslint-visitor-keys 2.0.0, Apache-2.0, https://github.com/eslint/eslint-visitor-keys - -eslint-webpack-plugin 2.5.2, MIT, https://github.com/webpack-contrib/eslint-webpack-plugin - -eslint 7.20.0, MIT, https://github.com/eslint/eslint - -eslint 7.32.0, MIT, https://github.com/eslint/eslint - -espree 7.3.1, BSD-2-Clause, https://github.com/eslint/espree - -esprima 4.0.1, BSD-2-Clause, https://github.com/jquery/esprima - -esquery 1.4.0, BSD-3-Clause, https://github.com/estools/esquery - -esrecurse 4.3.0, BSD-2-Clause, https://github.com/estools/esrecurse - -estraverse 4.3.0, BSD-2-Clause, https://github.com/estools/estraverse - -estraverse 5.2.0, BSD-2-Clause, https://github.com/estools/estraverse - -estree-walker 0.6.1, MIT, https://github.com/Rich-Harris/estree-walker - -estree-walker 1.0.1, MIT, https://github.com/Rich-Harris/estree-walker - -esutils 2.0.3, BSD-2-Clause, https://github.com/estools/esutils - -etag 1.8.1, MIT, https://github.com/jshttp/etag - -event-stream 3.3.4, MIT, https://github.com/dominictarr/event-stream - -eventemitter3 4.0.7, MIT, https://github.com/primus/eventemitter3 - -events 3.2.0, MIT, https://github.com/Gozala/events - -eventsource 1.0.7, MIT, https://github.com/EventSource/eventsource - -evp_bytestokey 1.0.3, MIT, https://github.com/crypto-browserify/EVP_BytesToKey - -exec-sh 0.3.4, MIT, https://github.com/tsertkov/exec-sh - -execa 1.0.0, MIT, https://github.com/sindresorhus/execa - -execa 4.1.0, MIT, https://github.com/sindresorhus/execa - -exit 0.1.2, MIT, https://github.com/cowboy/node-exit - -expand-brackets 2.1.4, MIT, https://github.com/jonschlinkert/expand-brackets - -expect 26.6.2, MIT, https://github.com/facebook/jest - -express 4.17.1, MIT, https://github.com/expressjs/express - -ext 1.4.0, ISC, https://github.com/medikoo/es5-ext/tree/ext - -extend-shallow 2.0.1, MIT, https://github.com/jonschlinkert/extend-shallow - -extend-shallow 3.0.2, MIT, https://github.com/jonschlinkert/extend-shallow - -extend 3.0.2, MIT, https://github.com/justmoon/node-extend - -extglob 2.0.4, MIT, https://github.com/micromatch/extglob - -extsprintf 1.3.0, MIT, https://github.com/davepacheco/node-extsprintf - -extsprintf 1.4.0, MIT, https://github.com/davepacheco/node-extsprintf - -fast-deep-equal 3.1.3, MIT, https://github.com/epoberezkin/fast-deep-equal - -fast-diff 1.2.0, Apache-2.0, https://github.com/jhchen/fast-diff - -fast-glob 3.2.5, MIT, https://github.com/mrmlnc/fast-glob - -fast-glob 3.2.7, MIT, https://github.com/mrmlnc/fast-glob - -fast-json-stable-stringify 2.1.0, MIT, https://github.com/epoberezkin/fast-json-stable-stringify - -fast-levenshtein 2.0.6, MIT, https://github.com/hiddentao/fast-levenshtein - -fastq 1.10.1, ISC, https://github.com/mcollina/fastq - -faye-websocket 0.11.3, Apache-2.0, https://github.com/faye/faye-websocket-node - -fb-watchman 2.0.1, Apache-2.0, https://github.com/facebook/watchman - -figgy-pudding 3.5.2, ISC, https://github.com/npm/figgy-pudding - -file-entry-cache 6.0.1, MIT, https://github.com/royriojas/file-entry-cache - -file-loader 6.1.1, MIT, https://github.com/webpack-contrib/file-loader - -filesize 6.1.0, BSD-3-Clause, https://github.com/avoidwork/filesize.js - -fill-range 4.0.0, MIT, https://github.com/jonschlinkert/fill-range - -fill-range 7.0.1, MIT, https://github.com/jonschlinkert/fill-range - -finalhandler 1.1.2, MIT, https://github.com/pillarjs/finalhandler - -find-cache-dir 2.1.0, MIT, https://github.com/avajs/find-cache-dir - -find-cache-dir 3.3.1, MIT, https://github.com/avajs/find-cache-dir - -find-up 1.1.2, MIT, https://github.com/sindresorhus/find-up - -find-up 2.1.0, MIT, https://github.com/sindresorhus/find-up - -find-up 3.0.0, MIT, https://github.com/sindresorhus/find-up - -find-up 4.1.0, MIT, https://github.com/sindresorhus/find-up - -flat-cache 3.0.4, MIT, https://github.com/royriojas/flat-cache - -flatted 3.1.1, ISC, https://github.com/WebReflection/flatted - -flatten 1.0.3, MIT, https://github.com/mk-pmb/flatten-js - -flush-write-stream 1.1.1, MIT, https://github.com/mafintosh/flush-write-stream - -follow-redirects 1.13.2, MIT, https://github.com/follow-redirects/follow-redirects - -for-in 1.0.2, MIT, https://github.com/jonschlinkert/for-in - -forever-agent 0.6.1, Apache-2.0, https://github.com/mikeal/forever-agent - -fork-ts-checker-webpack-plugin 4.1.6, MIT, https://github.com/TypeStrong/fork-ts-checker-webpack-plugin - -form-data 2.3.3, MIT, https://github.com/form-data/form-data - -forwarded 0.1.2, MIT, https://github.com/jshttp/forwarded - -fraction.js 4.1.1, MIT, https://github.com/infusion/Fraction.js - -fragment-cache 0.2.1, MIT, https://github.com/jonschlinkert/fragment-cache - -fresh 0.5.2, MIT, https://github.com/jshttp/fresh - -from2 2.3.0, MIT, https://github.com/hughsk/from2 - -from 0.1.7, MIT, https://github.com/dominictarr/from - -fs-extra 10.0.0, MIT, https://github.com/jprichardson/node-fs-extra - -fs-extra 7.0.1, MIT, https://github.com/jprichardson/node-fs-extra - -fs-extra 8.1.0, MIT, https://github.com/jprichardson/node-fs-extra - -fs-extra 9.1.0, MIT, https://github.com/jprichardson/node-fs-extra - -fs-minipass 2.1.0, ISC, https://github.com/npm/fs-minipass - -fs-write-stream-atomic 1.0.10, ISC, https://github.com/npm/fs-write-stream-atomic - -fs.realpath 1.0.0, ISC, https://github.com/isaacs/fs.realpath - -function-bind 1.1.1, MIT, https://github.com/Raynos/function-bind - -functional-red-black-tree 1.0.1, MIT, https://github.com/mikolalysenko/functional-red-black-tree - -gensync 1.0.0-beta.2, MIT, https://github.com/loganfsmyth/gensync - -get-caller-file 2.0.5, ISC, https://github.com/stefanpenner/get-caller-file - -get-intrinsic 1.1.1, MIT, https://github.com/ljharb/get-intrinsic - -get-own-enumerable-property-symbols 3.0.2, ISC, https://github.com/mightyiam/get-own-enumerable-property-symbols - -get-package-type 0.1.0, MIT, https://github.com/cfware/get-package-type - -get-stream 4.1.0, MIT, https://github.com/sindresorhus/get-stream - -get-stream 5.2.0, MIT, https://github.com/sindresorhus/get-stream - -get-value 2.0.6, MIT, https://github.com/jonschlinkert/get-value - -getpass 0.1.7, MIT, https://github.com/arekinath/node-getpass - -glob-parent 3.1.0, ISC, https://github.com/es128/glob-parent - -glob-parent 5.1.1, ISC, https://github.com/gulpjs/glob-parent - -glob-parent 5.1.2, ISC, https://github.com/gulpjs/glob-parent - -glob-parent 6.0.1, ISC, https://github.com/gulpjs/glob-parent - -glob 7.1.6, ISC, https://github.com/isaacs/node-glob - -glob 7.1.7, ISC, https://github.com/isaacs/node-glob - -global-modules 2.0.0, MIT, https://github.com/jonschlinkert/global-modules - -global-prefix 3.0.0, MIT, https://github.com/jonschlinkert/global-prefix - -globals 11.12.0, MIT, https://github.com/sindresorhus/globals - -globals 12.4.0, MIT, https://github.com/sindresorhus/globals - -globals 13.11.0, MIT, https://github.com/sindresorhus/globals - -globby 11.0.1, MIT, https://github.com/sindresorhus/globby - -globby 11.0.2, MIT, https://github.com/sindresorhus/globby - -globby 11.0.4, MIT, https://github.com/sindresorhus/globby - -globby 6.1.0, MIT, https://github.com/sindresorhus/globby - -graceful-fs 4.2.6, ISC, https://github.com/isaacs/node-graceful-fs - -growly 1.3.0, MIT, https://github.com/theabraham/growly - -gzip-size 5.1.1, MIT, https://github.com/sindresorhus/gzip-size - -handle-thing 2.0.1, MIT, https://github.com/indutny/handle-thing - -har-schema 2.0.0, ISC, https://github.com/ahmadnassri/har-schema - -har-validator 5.1.5, MIT, https://github.com/ahmadnassri/node-har-validator - -harmony-reflect 1.6.1, (Apache-2.0 OR MPL-1.1), git+https://tvcutsem github.com/tvcutsem/harmony-reflect - -has-ansi 2.0.0, MIT, https://github.com/sindresorhus/has-ansi - -has-bigints 1.0.1, MIT, https://github.com/ljharb/has-bigints - -has-flag 3.0.0, MIT, https://github.com/sindresorhus/has-flag - -has-flag 4.0.0, MIT, https://github.com/sindresorhus/has-flag - -has-symbols 1.0.1, MIT, https://github.com/ljharb/has-symbols - -has-symbols 1.0.2, MIT, https://github.com/inspect-js/has-symbols - -has-tostringtag 1.0.0, MIT, https://github.com/inspect-js/has-tostringtag - -has-value 0.3.1, MIT, https://github.com/jonschlinkert/has-value - -has-value 1.0.0, MIT, https://github.com/jonschlinkert/has-value - -has-values 0.1.4, MIT, https://github.com/jonschlinkert/has-values - -has-values 1.0.0, MIT, https://github.com/jonschlinkert/has-values - -has 1.0.3, MIT, https://github.com/tarruda/has - -hash-base 3.1.0, MIT, https://github.com/crypto-browserify/hash-base - -hash.js 1.1.7, MIT, https://github.com/indutny/hash.js - -he 1.2.0, MIT, https://github.com/mathiasbynens/he - -hex-color-regex 1.1.0, MIT, https://github.com/regexps/hex-color-regex - -history 4.10.1, MIT, https://github.com/ReactTraining/history - -hmac-drbg 1.0.1, MIT, https://github.com/indutny/hmac-drbg - -hoist-non-react-statics 3.3.2, BSD-3-Clause, https://github.com/mridgway/hoist-non-react-statics - -hoopy 0.1.4, MIT, git+https://gitlab.com/philbooth/hoopy - -hosted-git-info 2.8.9, ISC, https://github.com/npm/hosted-git-info - -hpack.js 2.1.6, MIT, https://github.com/indutny/hpack.js - -hsl-regex 1.0.0, MIT, https://github.com/regexps/hsl-regex - -hsla-regex 1.0.0, MIT, https://github.com/regexps/hsla-regex - -html-comment-regex 1.1.2, MIT, https://github.com/stevemao/html-comment-regex - -html-encoding-sniffer 2.0.1, MIT, https://github.com/jsdom/html-encoding-sniffer - -html-entities 1.4.0, MIT, https://github.com/mdevils/node-html-entities - -html-escaper 2.0.2, MIT, https://github.com/WebReflection/html-escaper - -html-minifier-terser 5.1.1, MIT, https://github.com/DanielRuf/html-minifier-terser - -html-tags 3.1.0, MIT, https://github.com/sindresorhus/html-tags - -html-webpack-plugin 4.5.0, MIT, https://github.com/jantimon/html-webpack-plugin - -htmlparser2 3.10.1, MIT, https://github.com/fb55/htmlparser2 - -http-deceiver 1.2.7, MIT, https://github.com/indutny/http-deceiver - -http-errors 1.6.3, MIT, https://github.com/jshttp/http-errors - -http-errors 1.7.2, MIT, https://github.com/jshttp/http-errors - -http-errors 1.7.3, MIT, https://github.com/jshttp/http-errors - -http-parser-js 0.5.3, MIT, https://github.com/creationix/http-parser-js - -http-proxy-middleware 0.19.1, MIT, https://github.com/chimurai/http-proxy-middleware - -http-proxy 1.18.1, MIT, https://github.com/http-party/node-http-proxy - -http-signature 1.2.0, MIT, https://github.com/joyent/node-http-signature - -https-browserify 1.0.0, MIT, https://github.com/substack/https-browserify - -human-signals 1.1.1, Apache-2.0, https://github.com/ehmicky/human-signals - -iconv-lite 0.4.24, MIT, https://github.com/ashtuchkin/iconv-lite - -icss-utils 4.1.1, ISC, https://github.com/css-modules/icss-utils - -identity-obj-proxy 3.0.0, MIT, https://github.com/keyanzhang/identity-obj-proxy - -ieee754 1.2.1, BSD-3-Clause, https://github.com/feross/ieee754 - -iferr 0.1.5, MIT, https://github.com/shesek/iferr - -ignore 4.0.6, MIT, https://github.com/kaelzhang/node-ignore - -ignore 5.1.8, MIT, https://github.com/kaelzhang/node-ignore - -immer 8.0.1, MIT, https://github.com/immerjs/immer - -import-cwd 2.1.0, MIT, https://github.com/sindresorhus/import-cwd - -import-cwd 3.0.0, MIT, https://github.com/sindresorhus/import-cwd - -import-fresh 2.0.0, MIT, https://github.com/sindresorhus/import-fresh - -import-fresh 3.3.0, MIT, https://github.com/sindresorhus/import-fresh - -import-from 2.1.0, MIT, https://github.com/sindresorhus/import-from - -import-from 3.0.0, MIT, https://github.com/sindresorhus/import-from - -import-local 2.0.0, MIT, https://github.com/sindresorhus/import-local - -import-local 3.0.2, MIT, https://github.com/sindresorhus/import-local - -imurmurhash 0.1.4, MIT, https://github.com/jensyt/imurmurhash-js - -indent-string 4.0.0, MIT, https://github.com/sindresorhus/indent-string - -indexes-of 1.0.1, MIT, https://github.com/dominictarr/indexes-of - -infer-owner 1.0.4, ISC, https://github.com/npm/infer-owner - -inflight 1.0.6, ISC, https://github.com/npm/inflight - -inherits 2.0.1, ISC, https://github.com/isaacs/inherits - -inherits 2.0.3, ISC, https://github.com/isaacs/inherits - -inherits 2.0.4, ISC, https://github.com/isaacs/inherits - -ini 1.3.8, ISC, https://github.com/isaacs/ini - -internal-ip 4.3.0, MIT, https://github.com/sindresorhus/internal-ip - -internal-slot 1.0.3, MIT, https://github.com/ljharb/internal-slot - -ip-regex 2.1.0, MIT, https://github.com/sindresorhus/ip-regex - -ip 1.1.5, MIT, https://github.com/indutny/node-ip - -ipaddr.js 1.9.1, MIT, https://github.com/whitequark/ipaddr.js - -is-absolute-url 2.1.0, MIT, https://github.com/sindresorhus/is-absolute-url - -is-absolute-url 3.0.3, MIT, https://github.com/sindresorhus/is-absolute-url - -is-accessor-descriptor 0.1.6, MIT, https://github.com/jonschlinkert/is-accessor-descriptor - -is-accessor-descriptor 1.0.0, MIT, https://github.com/jonschlinkert/is-accessor-descriptor - -is-arguments 1.1.0, MIT, https://github.com/inspect-js/is-arguments - -is-arrayish 0.2.1, MIT, https://github.com/qix-/node-is-arrayish - -is-arrayish 0.3.2, MIT, https://github.com/qix-/node-is-arrayish - -is-bigint 1.0.4, MIT, https://github.com/inspect-js/is-bigint - -is-binary-path 1.0.1, MIT, https://github.com/sindresorhus/is-binary-path - -is-binary-path 2.1.0, MIT, https://github.com/sindresorhus/is-binary-path - -is-boolean-object 1.1.2, MIT, https://github.com/inspect-js/is-boolean-object - -is-buffer 1.1.6, MIT, https://github.com/feross/is-buffer - -is-callable 1.2.3, MIT, https://github.com/ljharb/is-callable - -is-callable 1.2.4, MIT, https://github.com/inspect-js/is-callable - -is-ci 2.0.0, MIT, https://github.com/watson/is-ci - -is-color-stop 1.1.0, MIT, https://github.com/pigcan/is-color-stop - -is-core-module 2.2.0, MIT, https://github.com/inspect-js/is-core-module - -is-data-descriptor 0.1.4, MIT, https://github.com/jonschlinkert/is-data-descriptor - -is-data-descriptor 1.0.0, MIT, https://github.com/jonschlinkert/is-data-descriptor - -is-date-object 1.0.2, MIT, https://github.com/ljharb/is-date-object - -is-descriptor 0.1.6, MIT, https://github.com/jonschlinkert/is-descriptor - -is-descriptor 1.0.2, MIT, https://github.com/jonschlinkert/is-descriptor - -is-directory 0.3.1, MIT, https://github.com/jonschlinkert/is-directory - -is-docker 2.1.1, MIT, https://github.com/sindresorhus/is-docker - -is-extendable 0.1.1, MIT, https://github.com/jonschlinkert/is-extendable - -is-extendable 1.0.1, MIT, https://github.com/jonschlinkert/is-extendable - -is-extglob 2.1.1, MIT, https://github.com/jonschlinkert/is-extglob - -is-fullwidth-code-point 2.0.0, MIT, https://github.com/sindresorhus/is-fullwidth-code-point - -is-fullwidth-code-point 3.0.0, MIT, https://github.com/sindresorhus/is-fullwidth-code-point - -is-generator-fn 2.1.0, MIT, https://github.com/sindresorhus/is-generator-fn - -is-glob 3.1.0, MIT, https://github.com/jonschlinkert/is-glob - -is-glob 4.0.1, MIT, https://github.com/micromatch/is-glob - -is-module 1.0.0, MIT, https://github.com/component/is-module - -is-negative-zero 2.0.1, MIT, https://github.com/inspect-js/is-negative-zero - -is-number-object 1.0.6, MIT, https://github.com/inspect-js/is-number-object - -is-number 3.0.0, MIT, https://github.com/jonschlinkert/is-number - -is-number 7.0.0, MIT, https://github.com/jonschlinkert/is-number - -is-obj 1.0.1, MIT, https://github.com/sindresorhus/is-obj - -is-obj 2.0.0, MIT, https://github.com/sindresorhus/is-obj - -is-path-cwd 2.2.0, MIT, https://github.com/sindresorhus/is-path-cwd - -is-path-in-cwd 2.1.0, MIT, https://github.com/sindresorhus/is-path-in-cwd - -is-path-inside 2.1.0, MIT, https://github.com/sindresorhus/is-path-inside - -is-plain-obj 1.1.0, MIT, https://github.com/sindresorhus/is-plain-obj - -is-plain-object 2.0.4, MIT, https://github.com/jonschlinkert/is-plain-object - -is-potential-custom-element-name 1.0.0, MIT, https://github.com/mathiasbynens/is-potential-custom-element-name - -is-regex 1.1.2, MIT, https://github.com/inspect-js/is-regex - -is-regex 1.1.4, MIT, https://github.com/inspect-js/is-regex - -is-regexp 1.0.0, MIT, https://github.com/sindresorhus/is-regexp - -is-resolvable 1.1.0, ISC, https://github.com/shinnn/is-resolvable - -is-root 2.1.0, MIT, https://github.com/sindresorhus/is-root - -is-stream 1.1.0, MIT, https://github.com/sindresorhus/is-stream - -is-stream 2.0.0, MIT, https://github.com/sindresorhus/is-stream - -is-string 1.0.5, MIT, https://github.com/ljharb/is-string - -is-string 1.0.7, MIT, https://github.com/ljharb/is-string - -is-svg 3.0.0, MIT, https://github.com/sindresorhus/is-svg - -is-symbol 1.0.3, MIT, https://github.com/inspect-js/is-symbol - -is-symbol 1.0.4, MIT, https://github.com/inspect-js/is-symbol - -is-typedarray 1.0.0, MIT, https://github.com/hughsk/is-typedarray - -is-utf8 0.2.1, MIT, https://github.com/wayfind/is-utf8 - -is-windows 1.0.2, MIT, https://github.com/jonschlinkert/is-windows - -is-wsl 1.1.0, MIT, https://github.com/sindresorhus/is-wsl - -is-wsl 2.2.0, MIT, https://github.com/sindresorhus/is-wsl - -isarray 0.0.1, MIT, https://github.com/juliangruber/isarray - -isarray 1.0.0, MIT, https://github.com/juliangruber/isarray - -isexe 2.0.0, ISC, https://github.com/isaacs/isexe - -isobject 2.1.0, MIT, https://github.com/jonschlinkert/isobject - -isobject 3.0.1, MIT, https://github.com/jonschlinkert/isobject - -isstream 0.1.2, MIT, https://github.com/rvagg/isstream - -istanbul-lib-coverage 3.0.0, BSD-3-Clause, https://github.com/istanbuljs/istanbuljs - -istanbul-lib-instrument 4.0.3, BSD-3-Clause, https://github.com/istanbuljs/istanbuljs - -istanbul-lib-report 3.0.0, BSD-3-Clause, https://github.com/istanbuljs/istanbuljs - -istanbul-lib-source-maps 4.0.0, BSD-3-Clause, https://github.com/istanbuljs/istanbuljs - -istanbul-reports 3.0.2, BSD-3-Clause, https://github.com/istanbuljs/istanbuljs - -jest-changed-files 26.6.2, MIT, https://github.com/facebook/jest - -jest-circus 26.6.0, MIT, https://github.com/facebook/jest - -jest-cli 26.6.3, MIT, https://github.com/facebook/jest - -jest-config 26.6.3, MIT, https://github.com/facebook/jest - -jest-diff 26.6.2, MIT, https://github.com/facebook/jest - -jest-diff 27.0.6, MIT, https://github.com/facebook/jest - -jest-docblock 26.0.0, MIT, https://github.com/facebook/jest - -jest-each 26.6.2, MIT, https://github.com/facebook/jest - -jest-environment-jsdom 26.6.2, MIT, https://github.com/facebook/jest - -jest-environment-node 26.6.2, MIT, https://github.com/facebook/jest - -jest-get-type 26.3.0, MIT, https://github.com/facebook/jest - -jest-get-type 27.0.6, MIT, https://github.com/facebook/jest - -jest-haste-map 26.6.2, MIT, https://github.com/facebook/jest - -jest-jasmine2 26.6.3, MIT, https://github.com/facebook/jest - -jest-leak-detector 26.6.2, MIT, https://github.com/facebook/jest - -jest-matcher-utils 26.6.2, MIT, https://github.com/facebook/jest - -jest-message-util 26.6.2, MIT, https://github.com/facebook/jest - -jest-mock 26.6.2, MIT, https://github.com/facebook/jest - -jest-pnp-resolver 1.2.2, MIT, https://github.com/arcanis/jest-pnp-resolver - -jest-regex-util 26.0.0, MIT, https://github.com/facebook/jest - -jest-resolve-dependencies 26.6.3, MIT, https://github.com/facebook/jest - -jest-resolve 26.6.0, MIT, https://github.com/facebook/jest - -jest-resolve 26.6.2, MIT, https://github.com/facebook/jest - -jest-runner 26.6.3, MIT, https://github.com/facebook/jest - -jest-runtime 26.6.3, MIT, https://github.com/facebook/jest - -jest-serializer 26.6.2, MIT, https://github.com/facebook/jest - -jest-snapshot 26.6.2, MIT, https://github.com/facebook/jest - -jest-util 26.6.2, MIT, https://github.com/facebook/jest - -jest-validate 26.6.2, MIT, https://github.com/facebook/jest - -jest-watch-typeahead 0.6.1, MIT, https://github.com/jest-community/jest-watch-typeahead - -jest-watcher 26.6.2, MIT, https://github.com/facebook/jest - -jest-worker 24.9.0, MIT, https://github.com/facebook/jest - -jest-worker 26.6.2, MIT, https://github.com/facebook/jest - -jest 26.6.0, MIT, https://github.com/facebook/jest - -js-tokens 4.0.0, MIT, https://github.com/lydell/js-tokens - -js-yaml 3.14.1, MIT, https://github.com/nodeca/js-yaml - -jsbn 0.1.1, MIT, https://github.com/andyperlitch/jsbn - -jsdom 16.4.0, MIT, https://github.com/jsdom/jsdom - -jsesc 0.5.0, MIT, https://github.com/mathiasbynens/jsesc - -jsesc 2.5.2, MIT, https://github.com/mathiasbynens/jsesc - -json-parse-better-errors 1.0.2, MIT, https://github.com/zkat/json-parse-better-errors - -json-parse-even-better-errors 2.3.1, MIT, https://github.com/npm/json-parse-even-better-errors - -json-schema-traverse 0.4.1, MIT, https://github.com/epoberezkin/json-schema-traverse - -json-schema-traverse 1.0.0, MIT, https://github.com/epoberezkin/json-schema-traverse - -json-schema 0.2.3, AFLv2.1, BSD, https://github.com/kriszyp/json-schema - -json-stable-stringify-without-jsonify 1.0.1, MIT, https://github.com/samn/json-stable-stringify - -json-stringify-safe 5.0.1, ISC, https://github.com/isaacs/json-stringify-safe - -json3 3.3.3, MIT, https://github.com/bestiejs/json3 - -json5 1.0.1, MIT, https://github.com/json5/json5 - -json5 2.2.0, MIT, https://github.com/json5/json5 - -jsonfile 4.0.0, MIT, https://github.com/jprichardson/node-jsonfile - -jsonfile 6.1.0, MIT, https://github.com/jprichardson/node-jsonfile - -jsprim 1.4.1, MIT, https://github.com/joyent/node-jsprim - -jsx-ast-utils 3.2.0, MIT, https://github.com/evcohen/jsx-ast-utils - -killable 1.0.1, ISC, https://github.com/marten-de-vries/killable - -kind-of 3.2.2, MIT, https://github.com/jonschlinkert/kind-of - -kind-of 4.0.0, MIT, https://github.com/jonschlinkert/kind-of - -kind-of 5.1.0, MIT, https://github.com/jonschlinkert/kind-of - -kind-of 6.0.3, MIT, https://github.com/jonschlinkert/kind-of - -kleur 3.0.3, MIT, https://github.com/lukeed/kleur - -klona 2.0.4, MIT, https://github.com/lukeed/klona - -language-subtag-registry 0.3.21, ODC-By-1.0, https://github.com/mattcg/language-subtag-registry - -language-tags 1.0.5, MIT, https://github.com/mattcg/language-tags - -last-call-webpack-plugin 3.0.0, MIT, https://github.com/NMFR/last-call-webpack-plugin - -leven 3.1.0, MIT, https://github.com/sindresorhus/leven - -levn 0.3.0, MIT, https://github.com/gkz/levn - -levn 0.4.1, MIT, https://github.com/gkz/levn - -lilconfig 2.0.3, MIT, https://github.com/antonk52/lilconfig - -lines-and-columns 1.1.6, MIT, https://github.com/eventualbuddha/lines-and-columns - -load-json-file 1.1.0, MIT, https://github.com/sindresorhus/load-json-file - -load-json-file 2.0.0, MIT, https://github.com/sindresorhus/load-json-file - -loader-runner 2.4.0, MIT, https://github.com/webpack/loader-runner - -loader-utils 1.2.3, MIT, https://github.com/webpack/loader-utils - -loader-utils 1.4.0, MIT, https://github.com/webpack/loader-utils - -loader-utils 2.0.0, MIT, https://github.com/webpack/loader-utils - -locate-path 2.0.0, MIT, https://github.com/sindresorhus/locate-path - -locate-path 3.0.0, MIT, https://github.com/sindresorhus/locate-path - -locate-path 5.0.0, MIT, https://github.com/sindresorhus/locate-path - -lodash._reinterpolate 3.0.0, MIT, https://github.com/lodash/lodash - -lodash.clonedeep 4.5.0, MIT, https://github.com/lodash/lodash - -lodash.debounce 4.0.8, MIT, https://github.com/lodash/lodash - -lodash.memoize 4.1.2, MIT, https://github.com/lodash/lodash - -lodash.merge 4.6.2, MIT, https://github.com/lodash/lodash - -lodash.sortby 4.7.0, MIT, https://github.com/lodash/lodash - -lodash.template 4.5.0, MIT, https://github.com/lodash/lodash - -lodash.templatesettings 4.2.0, MIT, https://github.com/lodash/lodash - -lodash.throttle 4.1.1, MIT, https://github.com/lodash/lodash - -lodash.topath 4.5.2, MIT, https://github.com/lodash/lodash - -lodash.truncate 4.4.2, MIT, https://github.com/lodash/lodash - -lodash.uniq 4.5.0, MIT, https://github.com/lodash/lodash - -lodash 4.17.21, MIT, https://github.com/lodash/lodash - -loglevel 1.7.1, MIT, https://github.com/pimterry/loglevel - -loose-envify 1.4.0, MIT, https://github.com/zertosh/loose-envify - -lower-case 2.0.2, MIT, https://github.com/blakeembrey/change-case - -lru-cache 4.1.5, ISC, https://github.com/isaacs/node-lru-cache - -lru-cache 5.1.1, ISC, https://github.com/isaacs/node-lru-cache - -lru-cache 6.0.0, ISC, https://github.com/isaacs/node-lru-cache - -lz-string 1.4.4, WTFPL, https://github.com/pieroxy/lz-string - -magic-string 0.25.7, MIT, https://github.com/rich-harris/magic-string - -make-dir 2.1.0, MIT, https://github.com/sindresorhus/make-dir - -make-dir 3.1.0, MIT, https://github.com/sindresorhus/make-dir - -makeerror 1.0.11, BSD-3-Clause, https://github.com/daaku/nodejs-makeerror - -map-cache 0.2.2, MIT, https://github.com/jonschlinkert/map-cache - -map-stream 0.1.0, Custom: https://github.com/dominictarr/event-stream, https://github.com/dominictarr/map-stream - -map-visit 1.0.0, MIT, https://github.com/jonschlinkert/map-visit - -marked 3.0.3, MIT, https://github.com/markedjs/marked - -md5.js 1.3.5, MIT, https://github.com/crypto-browserify/md5.js - -mdn-data 2.0.14, CC0-1.0, https://github.com/mdn/data - -mdn-data 2.0.4, CC0-1.0, https://github.com/mdn/data - -media-typer 0.3.0, MIT, https://github.com/jshttp/media-typer - -memory-fs 0.4.1, MIT, https://github.com/webpack/memory-fs - -memory-fs 0.5.0, MIT, https://github.com/webpack/memory-fs - -merge-descriptors 1.0.1, MIT, https://github.com/component/merge-descriptors - -merge-stream 2.0.0, MIT, https://github.com/grncdr/merge-stream - -merge2 1.4.1, MIT, https://github.com/teambition/merge2 - -methods 1.1.2, MIT, https://github.com/jshttp/methods - -microevent.ts 0.1.1, MIT, https://github.com/DirtyHairy/microevent - -micromatch 3.1.10, MIT, https://github.com/micromatch/micromatch - -micromatch 4.0.2, MIT, https://github.com/micromatch/micromatch - -micromatch 4.0.4, MIT, https://github.com/micromatch/micromatch - -miller-rabin 4.0.1, MIT, https://github.com/indutny/miller-rabin - -mime-db 1.46.0, MIT, https://github.com/jshttp/mime-db - -mime-types 2.1.29, MIT, https://github.com/jshttp/mime-types - -mime 1.6.0, MIT, https://github.com/broofa/node-mime - -mime 2.5.2, MIT, https://github.com/broofa/mime - -mimic-fn 2.1.0, MIT, https://github.com/sindresorhus/mimic-fn - -min-indent 1.0.1, MIT, https://github.com/thejameskyle/min-indent - -mini-create-react-context 0.4.1, MIT, https://github.com/StringEpsilon/mini-create-react-context - -mini-css-extract-plugin 0.11.3, MIT, https://github.com/webpack-contrib/mini-css-extract-plugin - -minimalistic-assert 1.0.1, ISC, https://github.com/calvinmetcalf/minimalistic-assert - -minimalistic-crypto-utils 1.0.1, MIT, https://github.com/indutny/minimalistic-crypto-utils - -minimatch 3.0.4, ISC, https://github.com/isaacs/minimatch - -minimist 1.2.5, MIT, https://github.com/substack/minimist - -minipass-collect 1.0.2, ISC, - -minipass-flush 1.0.5, ISC, https://github.com/isaacs/minipass-flush - -minipass-pipeline 1.2.4, ISC, - -minipass 3.1.3, ISC, https://github.com/isaacs/minipass - -minizlib 2.1.2, MIT, https://github.com/isaacs/minizlib - -mississippi 3.0.0, BSD-2-Clause, https://github.com/maxogden/mississippi - -mixin-deep 1.3.2, MIT, https://github.com/jonschlinkert/mixin-deep - -mkdirp 0.5.5, MIT, https://github.com/substack/node-mkdirp - -mkdirp 1.0.4, MIT, https://github.com/isaacs/node-mkdirp - -modern-normalize 1.1.0, MIT, https://github.com/sindresorhus/modern-normalize - -move-concurrently 1.0.1, ISC, https://github.com/npm/move-concurrently - -ms 2.0.0, MIT, https://github.com/zeit/ms - -ms 2.1.1, MIT, https://github.com/zeit/ms - -ms 2.1.2, MIT, https://github.com/zeit/ms - -ms 2.1.3, MIT, https://github.com/vercel/ms - -multicast-dns-service-types 1.1.0, MIT, https://github.com/mafintosh/multicast-dns-service-types - -multicast-dns 6.2.3, MIT, https://github.com/mafintosh/multicast-dns - -nanoid 3.1.25, MIT, https://github.com/ai/nanoid - -nanomatch 1.2.13, MIT, https://github.com/micromatch/nanomatch - -native-url 0.2.6, Apache-2.0, https://github.com/GoogleChromeLabs/native-url - -natural-compare 1.4.0, MIT, https://github.com/litejs/natural-compare-lite - -negotiator 0.6.2, MIT, https://github.com/jshttp/negotiator - -neo-async 2.6.2, MIT, https://github.com/suguru03/neo-async - -next-tick 1.0.0, MIT, https://github.com/medikoo/next-tick - -nice-try 1.0.5, MIT, https://github.com/electerious/nice-try - -no-case 3.0.4, MIT, https://github.com/blakeembrey/change-case - -node-emoji 1.11.0, MIT, https://github.com/omnidan/node-emoji - -node-forge 0.10.0, (BSD-3-Clause OR GPL-2.0), https://github.com/digitalbazaar/forge - -node-int64 0.4.0, MIT, https://github.com/broofa/node-int64 - -node-libs-browser 2.2.1, MIT, https://github.com/webpack/node-libs-browser - -node-modules-regexp 1.0.0, MIT, https://github.com/jamestalmage/node-modules-regexp - -node-notifier 8.0.1, MIT, https://github.com/mikaelbr/node-notifier - -node-releases 1.1.70, MIT, https://github.com/chicoxyzzy/node-releases - -node-releases 1.1.75, MIT, https://github.com/chicoxyzzy/node-releases - -normalize-package-data 2.5.0, BSD-2-Clause, https://github.com/npm/normalize-package-data - -normalize-path 2.1.1, MIT, https://github.com/jonschlinkert/normalize-path - -normalize-path 3.0.0, MIT, https://github.com/jonschlinkert/normalize-path - -normalize-range 0.1.2, MIT, https://github.com/jamestalmage/normalize-range - -normalize-url 1.9.1, MIT, https://github.com/sindresorhus/normalize-url - -normalize-url 3.3.0, MIT, https://github.com/sindresorhus/normalize-url - -npm-run-path 2.0.2, MIT, https://github.com/sindresorhus/npm-run-path - -npm-run-path 4.0.1, MIT, https://github.com/sindresorhus/npm-run-path - -nth-check 1.0.2, BSD-2-Clause, https://github.com/fb55/nth-check - -num2fraction 1.2.2, MIT, https://github.com/yisibl/num2fraction - -nwsapi 2.2.0, MIT, https://github.com/dperini/nwsapi - -oauth-sign 0.9.0, Apache-2.0, https://github.com/mikeal/oauth-sign - -object-assign 4.1.1, MIT, https://github.com/sindresorhus/object-assign - -object-copy 0.1.0, MIT, https://github.com/jonschlinkert/object-copy - -object-hash 2.2.0, MIT, https://github.com/puleos/object-hash - -object-inspect 1.11.0, MIT, https://github.com/inspect-js/object-inspect - -object-inspect 1.9.0, MIT, https://github.com/inspect-js/object-inspect - -object-is 1.1.5, MIT, https://github.com/es-shims/object-is - -object-keys 1.1.1, MIT, https://github.com/ljharb/object-keys - -object-visit 1.0.1, MIT, https://github.com/jonschlinkert/object-visit - -object.assign 4.1.2, MIT, https://github.com/ljharb/object.assign - -object.entries 1.1.3, MIT, https://github.com/es-shims/Object.entries - -object.entries 1.1.4, MIT, https://github.com/es-shims/Object.entries - -object.fromentries 2.0.4, MIT, https://github.com/es-shims/Object.fromEntries - -object.getownpropertydescriptors 2.1.2, MIT, https://github.com/es-shims/object.getownpropertydescriptors - -object.pick 1.3.0, MIT, https://github.com/jonschlinkert/object.pick - -object.values 1.1.2, MIT, https://github.com/es-shims/Object.values - -object.values 1.1.4, MIT, https://github.com/es-shims/Object.values - -obuf 1.1.2, MIT, https://github.com/indutny/offset-buffer - -on-finished 2.3.0, MIT, https://github.com/jshttp/on-finished - -on-headers 1.0.2, MIT, https://github.com/jshttp/on-headers - -once 1.4.0, ISC, https://github.com/isaacs/once - -onetime 5.1.2, MIT, https://github.com/sindresorhus/onetime - -open 7.4.2, MIT, https://github.com/sindresorhus/open - -opn 5.5.0, MIT, https://github.com/sindresorhus/opn - -optimize-css-assets-webpack-plugin 5.0.4, MIT, https://github.com/NMFR/optimize-css-assets-webpack-plugin - -optionator 0.8.3, MIT, https://github.com/gkz/optionator - -optionator 0.9.1, MIT, https://github.com/gkz/optionator - -original 1.0.2, MIT, https://github.com/unshiftio/original - -os-browserify 0.3.0, MIT, https://github.com/CoderPuppy/os-browserify - -p-each-series 2.2.0, MIT, https://github.com/sindresorhus/p-each-series - -p-finally 1.0.0, MIT, https://github.com/sindresorhus/p-finally - -p-limit 1.3.0, MIT, https://github.com/sindresorhus/p-limit - -p-limit 2.3.0, MIT, https://github.com/sindresorhus/p-limit - -p-limit 3.1.0, MIT, https://github.com/sindresorhus/p-limit - -p-locate 2.0.0, MIT, https://github.com/sindresorhus/p-locate - -p-locate 3.0.0, MIT, https://github.com/sindresorhus/p-locate - -p-locate 4.1.0, MIT, https://github.com/sindresorhus/p-locate - -p-map 2.1.0, MIT, https://github.com/sindresorhus/p-map - -p-map 4.0.0, MIT, https://github.com/sindresorhus/p-map - -p-retry 3.0.1, MIT, https://github.com/sindresorhus/p-retry - -p-try 1.0.0, MIT, https://github.com/sindresorhus/p-try - -p-try 2.2.0, MIT, https://github.com/sindresorhus/p-try - -pako 1.0.11, (MIT AND Zlib), https://github.com/nodeca/pako - -parallel-transform 1.2.0, MIT, https://github.com/mafintosh/parallel-transform - -param-case 3.0.4, MIT, https://github.com/blakeembrey/change-case - -parent-module 1.0.1, MIT, https://github.com/sindresorhus/parent-module - -parse-asn1 5.1.6, ISC, https://github.com/crypto-browserify/parse-asn1 - -parse-json 2.2.0, MIT, https://github.com/sindresorhus/parse-json - -parse-json 4.0.0, MIT, https://github.com/sindresorhus/parse-json - -parse-json 5.2.0, MIT, https://github.com/sindresorhus/parse-json - -parse5 5.1.1, MIT, https://github.com/inikulin/parse5 - -parseurl 1.3.3, MIT, https://github.com/pillarjs/parseurl - -pascal-case 3.1.2, MIT, https://github.com/blakeembrey/change-case - -pascalcase 0.1.1, MIT, https://github.com/jonschlinkert/pascalcase - -path-browserify 0.0.1, MIT, https://github.com/substack/path-browserify - -path-dirname 1.0.2, MIT, https://github.com/es128/path-dirname - -path-exists 2.1.0, MIT, https://github.com/sindresorhus/path-exists - -path-exists 3.0.0, MIT, https://github.com/sindresorhus/path-exists - -path-exists 4.0.0, MIT, https://github.com/sindresorhus/path-exists - -path-is-absolute 1.0.1, MIT, https://github.com/sindresorhus/path-is-absolute - -path-is-inside 1.0.2, (WTFPL OR MIT), https://github.com/domenic/path-is-inside - -path-key 2.0.1, MIT, https://github.com/sindresorhus/path-key - -path-key 3.1.1, MIT, https://github.com/sindresorhus/path-key - -path-parse 1.0.7, MIT, https://github.com/jbgutierrez/path-parse - -path-to-regexp 0.1.7, MIT, https://github.com/component/path-to-regexp - -path-to-regexp 1.8.0, MIT, https://github.com/pillarjs/path-to-regexp - -path-type 1.1.0, MIT, https://github.com/sindresorhus/path-type - -path-type 2.0.0, MIT, https://github.com/sindresorhus/path-type - -path-type 4.0.0, MIT, https://github.com/sindresorhus/path-type - -pause-stream 0.0.11, MIT, Apache2, https://github.com/dominictarr/pause-stream - -pbkdf2 3.1.1, MIT, https://github.com/crypto-browserify/pbkdf2 - -performance-now 2.1.0, MIT, https://github.com/braveg1rl/performance-now - -picomatch 2.2.2, MIT, https://github.com/micromatch/picomatch - -picomatch 2.3.0, MIT, https://github.com/micromatch/picomatch - -pify 2.3.0, MIT, https://github.com/sindresorhus/pify - -pify 4.0.1, MIT, https://github.com/sindresorhus/pify - -pinkie-promise 2.0.1, MIT, https://github.com/floatdrop/pinkie-promise - -pinkie 2.0.4, MIT, https://github.com/floatdrop/pinkie - -pirates 4.0.1, MIT, https://github.com/ariporad/pirates - -pkg-dir 2.0.0, MIT, https://github.com/sindresorhus/pkg-dir - -pkg-dir 3.0.0, MIT, https://github.com/sindresorhus/pkg-dir - -pkg-dir 4.2.0, MIT, https://github.com/sindresorhus/pkg-dir - -pkg-up 3.1.0, MIT, https://github.com/sindresorhus/pkg-up - -pnp-webpack-plugin 1.6.4, MIT, https://github.com/arcanis/pnp-webpack-plugin - -portfinder 1.0.28, MIT, https://github.com/http-party/node-portfinder - -posix-character-classes 0.1.1, MIT, https://github.com/jonschlinkert/posix-character-classes - -postcss-attribute-case-insensitive 4.0.2, MIT, https://github.com/Semigradsky/postcss-attribute-case-insensitive - -postcss-browser-comments 3.0.0, CC0-1.0, https://github.com/csstools/postcss-browser-comments - -postcss-calc 7.0.5, MIT, https://github.com/postcss/postcss-calc - -postcss-color-functional-notation 2.0.1, CC0-1.0, https://github.com/jonathantneal/postcss-color-functional-notation - -postcss-color-gray 5.0.0, ISC, https://github.com/postcss/postcss-color-gray - -postcss-color-hex-alpha 5.0.3, MIT, https://github.com/postcss/postcss-color-hex-alpha - -postcss-color-mod-function 3.0.3, CC0-1.0, https://github.com/jonathantneal/postcss-color-mod-function - -postcss-color-rebeccapurple 4.0.1, MIT, https://github.com/postcss/postcss-color-rebeccapurple - -postcss-colormin 4.0.3, MIT, https://github.com/cssnano/cssnano - -postcss-convert-values 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-custom-media 7.0.8, MIT, https://github.com/postcss/postcss-custom-media - -postcss-custom-properties 8.0.11, MIT, https://github.com/postcss/postcss-custom-properties - -postcss-custom-selectors 5.1.2, MIT, https://github.com/postcss/postcss-custom-selectors - -postcss-dir-pseudo-class 5.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-dir-pseudo-class - -postcss-discard-comments 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-discard-duplicates 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-discard-empty 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-discard-overridden 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-double-position-gradients 1.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-double-position-gradients - -postcss-env-function 2.0.2, CC0-1.0, https://github.com/jonathantneal/postcss-env-function - -postcss-flexbugs-fixes 4.2.1, MIT, https://github.com/luisrudge/postcss-flexbugs-fixes - -postcss-focus-visible 4.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-focus-visible - -postcss-focus-within 3.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-focus-within - -postcss-font-variant 4.0.1, MIT, https://github.com/postcss/postcss-font-variant - -postcss-gap-properties 2.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-gap-properties - -postcss-image-set-function 3.0.1, CC0-1.0, https://github.com/jonathantneal/postcss-image-set-function - -postcss-initial 3.0.2, MIT, https://github.com/maximkoretskiy/postcss-initial - -postcss-js 3.0.3, MIT, https://github.com/postcss/postcss-js - -postcss-lab-function 2.0.1, CC0-1.0, https://github.com/jonathantneal/postcss-lab-function - -postcss-load-config 2.1.2, MIT, https://github.com/postcss/postcss-load-config - -postcss-load-config 3.1.0, MIT, https://github.com/postcss/postcss-load-config - -postcss-loader 3.0.0, MIT, https://github.com/postcss/postcss-loader - -postcss-logical 3.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-logical - -postcss-media-minmax 4.0.0, MIT, https://github.com/postcss/postcss-media-minmax - -postcss-merge-longhand 4.0.11, MIT, https://github.com/cssnano/cssnano - -postcss-merge-rules 4.0.3, MIT, https://github.com/cssnano/cssnano - -postcss-minify-font-values 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-minify-gradients 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-minify-params 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-minify-selectors 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-modules-extract-imports 2.0.0, ISC, https://github.com/css-modules/postcss-modules-extract-imports - -postcss-modules-local-by-default 3.0.3, MIT, https://github.com/css-modules/postcss-modules-local-by-default - -postcss-modules-scope 2.2.0, ISC, https://github.com/css-modules/postcss-modules-scope - -postcss-modules-values 3.0.0, ISC, https://github.com/css-modules/postcss-modules-values - -postcss-nested 5.0.5, MIT, https://github.com/postcss/postcss-nested - -postcss-nesting 7.0.1, CC0-1.0, https://github.com/jonathantneal/postcss-nesting - -postcss-normalize-charset 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-display-values 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-positions 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-repeat-style 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-string 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-timing-functions 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-unicode 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-url 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-normalize-whitespace 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-normalize 8.0.1, CC0-1.0, https://github.com/csstools/postcss-normalize - -postcss-ordered-values 4.1.2, MIT, https://github.com/cssnano/cssnano - -postcss-overflow-shorthand 2.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-overflow-shorthand - -postcss-page-break 2.0.0, MIT, https://github.com/shrpne/postcss-page-break - -postcss-place 4.0.1, CC0-1.0, https://github.com/jonathantneal/postcss-place - -postcss-preset-env 6.7.0, CC0-1.0, https://github.com/csstools/postcss-preset-env - -postcss-pseudo-class-any-link 6.0.0, CC0-1.0, https://github.com/jonathantneal/postcss-pseudo-class-any-link - -postcss-reduce-initial 4.0.3, MIT, https://github.com/cssnano/cssnano - -postcss-reduce-transforms 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-replace-overflow-wrap 3.0.0, MIT, https://github.com/MattDiMu/postcss-replace-overflow-wrap - -postcss-safe-parser 5.0.2, MIT, https://github.com/postcss/postcss-safe-parser - -postcss-selector-matches 4.0.0, MIT, https://github.com/postcss/postcss-selector-matches - -postcss-selector-not 4.0.1, MIT, https://github.com/postcss/postcss-selector-not - -postcss-selector-parser 3.1.2, MIT, https://github.com/postcss/postcss-selector-parser - -postcss-selector-parser 5.0.0, MIT, https://github.com/postcss/postcss-selector-parser - -postcss-selector-parser 6.0.4, MIT, https://github.com/postcss/postcss-selector-parser - -postcss-selector-parser 6.0.6, MIT, https://github.com/postcss/postcss-selector-parser - -postcss-svgo 4.0.2, MIT, https://github.com/cssnano/cssnano - -postcss-unique-selectors 4.0.1, MIT, https://github.com/cssnano/cssnano - -postcss-value-parser 3.3.1, MIT, https://github.com/TrySound/postcss-value-parser - -postcss-value-parser 4.1.0, MIT, https://github.com/TrySound/postcss-value-parser - -postcss-values-parser 2.0.1, MIT, https://github.com/lesshint/postcss-values-parser - -postcss 7.0.21, MIT, https://github.com/postcss/postcss - -postcss 7.0.36, MIT, https://github.com/postcss/postcss - -postcss 8.3.6, MIT, https://github.com/postcss/postcss - -prelude-ls 1.1.2, MIT, https://github.com/gkz/prelude-ls - -prelude-ls 1.2.1, MIT, https://github.com/gkz/prelude-ls - -prepend-http 1.0.4, MIT, https://github.com/sindresorhus/prepend-http - -prettier-linter-helpers 1.0.0, MIT, https://github.com/prettier/prettier-linter-helpers - -prettier 2.3.2, MIT, https://github.com/prettier/prettier - -pretty-bytes 5.6.0, MIT, https://github.com/sindresorhus/pretty-bytes - -pretty-error 2.1.2, MIT, https://github.com/AriaMinaei/pretty-error - -pretty-format 26.6.2, MIT, https://github.com/facebook/jest - -pretty-format 27.0.6, MIT, https://github.com/facebook/jest - -pretty-hrtime 1.0.3, MIT, https://github.com/robrich/pretty-hrtime - -process-nextick-args 2.0.1, MIT, https://github.com/calvinmetcalf/process-nextick-args - -process 0.11.10, MIT, https://github.com/shtylman/node-process - -progress 2.0.3, MIT, https://github.com/visionmedia/node-progress - -promise-inflight 1.0.1, ISC, https://github.com/iarna/promise-inflight - -promise 8.1.0, MIT, https://github.com/then/promise - -prompts 2.4.0, MIT, https://github.com/terkelg/prompts - -prop-types 15.7.2, MIT, https://github.com/facebook/prop-types - -proxy-addr 2.0.6, MIT, https://github.com/jshttp/proxy-addr - -prr 1.0.1, MIT, https://github.com/rvagg/prr - -ps-tree 1.2.0, MIT, https://github.com/indexzero/ps-tree - -pseudomap 1.0.2, ISC, https://github.com/isaacs/pseudomap - -psl 1.8.0, MIT, https://github.com/lupomontero/psl - -public-encrypt 4.0.3, MIT, https://github.com/crypto-browserify/publicEncrypt - -pump 2.0.1, MIT, https://github.com/mafintosh/pump - -pump 3.0.0, MIT, https://github.com/mafintosh/pump - -pumpify 1.5.1, MIT, https://github.com/mafintosh/pumpify - -punycode 1.3.2, MIT, https://github.com/bestiejs/punycode.js - -punycode 1.4.1, MIT, https://github.com/bestiejs/punycode.js - -punycode 2.1.1, MIT, https://github.com/bestiejs/punycode.js - -purgecss 4.0.3, MIT, https://github.com/FullHuman/purgecss - -q 1.5.1, MIT, https://github.com/kriskowal/q - -qs 6.5.2, BSD-3-Clause, https://github.com/ljharb/qs - -qs 6.7.0, BSD-3-Clause, https://github.com/ljharb/qs - -query-string 4.3.4, MIT, https://github.com/sindresorhus/query-string - -querystring-es3 0.2.1, MIT, https://github.com/mike-spainhower/querystring - -querystring 0.2.0, MIT, https://github.com/Gozala/querystring - -querystring 0.2.1, MIT, https://github.com/Gozala/querystring - -querystringify 2.2.0, MIT, https://github.com/unshiftio/querystringify - -queue-microtask 1.2.2, MIT, https://github.com/feross/queue-microtask - -quick-lru 5.1.1, MIT, https://github.com/sindresorhus/quick-lru - -raf 3.4.1, MIT, https://github.com/chrisdickinson/raf - -randombytes 2.1.0, MIT, https://github.com/crypto-browserify/randombytes - -randomfill 1.0.4, MIT, https://github.com/crypto-browserify/randomfill - -range-parser 1.2.1, MIT, https://github.com/jshttp/range-parser - -raw-body 2.4.0, MIT, https://github.com/stream-utils/raw-body - -react-app-polyfill 2.0.0, MIT, https://github.com/facebook/create-react-app - -react-dev-utils 11.0.4, MIT, https://github.com/facebook/create-react-app - -react-dom 17.0.2, MIT, https://github.com/facebook/react - -react-error-overlay 6.0.9, MIT, https://github.com/facebook/create-react-app - -react-is 16.13.1, MIT, https://github.com/facebook/react - -react-is 17.0.1, MIT, https://github.com/facebook/react - -react-refresh 0.8.3, MIT, https://github.com/facebook/react - -react-router-dom 5.2.0, MIT, https://github.com/ReactTraining/react-router - -react-router 5.2.0, MIT, https://github.com/ReactTraining/react-router - -react-scripts 4.0.3, MIT, https://github.com/facebook/create-react-app - -react-sparklines 1.7.0, MIT, https://github.com/borisyankov/react-sparklines - -react 17.0.2, MIT, https://github.com/facebook/react - -read-pkg-up 1.0.1, MIT, https://github.com/sindresorhus/read-pkg-up - -read-pkg-up 2.0.0, MIT, https://github.com/sindresorhus/read-pkg-up - -read-pkg-up 7.0.1, MIT, https://github.com/sindresorhus/read-pkg-up - -read-pkg 1.1.0, MIT, https://github.com/sindresorhus/read-pkg - -read-pkg 2.0.0, MIT, https://github.com/sindresorhus/read-pkg - -read-pkg 5.2.0, MIT, https://github.com/sindresorhus/read-pkg - -readable-stream 2.3.7, MIT, https://github.com/nodejs/readable-stream - -readable-stream 3.6.0, MIT, https://github.com/nodejs/readable-stream - -readdirp 2.2.1, MIT, https://github.com/paulmillr/readdirp - -readdirp 3.5.0, MIT, https://github.com/paulmillr/readdirp - -readdirp 3.6.0, MIT, https://github.com/paulmillr/readdirp - -recursive-readdir 2.2.2, MIT, https://github.com/jergason/recursive-readdir - -redent 3.0.0, MIT, https://github.com/sindresorhus/redent - -reduce-css-calc 2.1.8, MIT, https://github.com/MoOx/reduce-css-calc - -regenerate-unicode-properties 8.2.0, MIT, https://github.com/mathiasbynens/regenerate-unicode-properties - -regenerate 1.4.2, MIT, https://github.com/mathiasbynens/regenerate - -regenerator-runtime 0.11.1, MIT, https://github.com/facebook/regenerator/tree/master/packages/regenerator-runtime - -regenerator-runtime 0.13.7, MIT, https://github.com/facebook/regenerator/tree/master/packages/regenerator-runtime - -regenerator-transform 0.14.5, MIT, https://github.com/facebook/regenerator/tree/master/packages/regenerator-transform - -regex-not 1.0.2, MIT, https://github.com/jonschlinkert/regex-not - -regex-parser 2.2.11, MIT, https://github.com/IonicaBizau/regex-parser.js - -regexp.prototype.flags 1.3.1, MIT, https://github.com/es-shims/RegExp.prototype.flags - -regexpp 3.1.0, MIT, https://github.com/mysticatea/regexpp - -regexpu-core 4.7.1, MIT, https://github.com/mathiasbynens/regexpu-core - -regjsgen 0.5.2, MIT, https://github.com/bnjmnt4n/regjsgen - -regjsparser 0.6.7, BSD-2-Clause, https://github.com/jviereck/regjsparser - -relateurl 0.2.7, MIT, https://github.com/stevenvachon/relateurl - -remove-trailing-separator 1.1.0, ISC, https://github.com/darsain/remove-trailing-separator - -renderkid 2.0.5, MIT, https://github.com/AriaMinaei/RenderKid - -repeat-element 1.1.3, MIT, https://github.com/jonschlinkert/repeat-element - -repeat-string 1.6.1, MIT, https://github.com/jonschlinkert/repeat-string - -request-promise-core 1.1.4, ISC, https://github.com/request/promise-core - -request-promise-native 1.0.9, ISC, https://github.com/request/request-promise-native - -request 2.88.2, Apache-2.0, https://github.com/request/request - -require-directory 2.1.1, MIT, https://github.com/troygoode/node-require-directory - -require-from-string 2.0.2, MIT, https://github.com/floatdrop/require-from-string - -require-main-filename 2.0.0, ISC, https://github.com/yargs/require-main-filename - -requires-port 1.0.0, MIT, https://github.com/unshiftio/requires-port - -resolve-cwd 2.0.0, MIT, https://github.com/sindresorhus/resolve-cwd - -resolve-cwd 3.0.0, MIT, https://github.com/sindresorhus/resolve-cwd - -resolve-from 3.0.0, MIT, https://github.com/sindresorhus/resolve-from - -resolve-from 4.0.0, MIT, https://github.com/sindresorhus/resolve-from - -resolve-from 5.0.0, MIT, https://github.com/sindresorhus/resolve-from - -resolve-pathname 3.0.0, MIT, https://github.com/mjackson/resolve-pathname - -resolve-url-loader 3.1.2, MIT, https://github.com/bholloway/resolve-url-loader - -resolve-url 0.2.1, MIT, https://github.com/lydell/resolve-url - -resolve 1.18.1, MIT, https://github.com/browserify/resolve - -resolve 1.20.0, MIT, https://github.com/browserify/resolve - -resolve 2.0.0-next.3, MIT, https://github.com/browserify/resolve - -ret 0.1.15, MIT, https://github.com/fent/ret.js - -retry 0.12.0, MIT, https://github.com/tim-kos/node-retry - -reusify 1.0.4, MIT, https://github.com/mcollina/reusify - -rework-visit 1.0.0, MIT, - -rework 1.0.1, MIT*, https://github.com/reworkcss/rework - -rgb-regex 1.0.1, MIT, https://github.com/regexps/rgb-regex - -rgba-regex 1.0.0, MIT, https://github.com/johnotander/rgba-regex - -rimraf 2.7.1, ISC, https://github.com/isaacs/rimraf - -rimraf 3.0.2, ISC, https://github.com/isaacs/rimraf - -ripemd160 2.0.2, MIT, https://github.com/crypto-browserify/ripemd160 - -rollup-plugin-babel 4.4.0, MIT, https://github.com/rollup/rollup-plugin-babel - -rollup-plugin-terser 5.3.1, MIT, https://github.com/TrySound/rollup-plugin-terser - -rollup-pluginutils 2.8.2, MIT, https://github.com/rollup/rollup-pluginutils - -rollup 1.32.1, MIT, https://github.com/rollup/rollup - -rsvp 4.8.5, MIT, https://github.com/tildeio/rsvp.js - -run-parallel 1.2.0, MIT, https://github.com/feross/run-parallel - -run-queue 1.0.3, ISC, https://github.com/iarna/run-queue - -safe-buffer 5.1.2, MIT, https://github.com/feross/safe-buffer - -safe-buffer 5.2.1, MIT, https://github.com/feross/safe-buffer - -safe-regex 1.1.0, MIT, https://github.com/substack/safe-regex - -safer-buffer 2.1.2, MIT, https://github.com/ChALkeR/safer-buffer - -sane 4.1.0, MIT, https://github.com/amasad/sane - -sanitize.css 10.0.0, CC0-1.0, https://github.com/csstools/sanitize.css - -sass-loader 10.1.1, MIT, https://github.com/webpack-contrib/sass-loader - -sax 1.2.4, ISC, https://github.com/isaacs/sax-js - -saxes 5.0.1, ISC, https://github.com/lddubeau/saxes - -scheduler 0.20.2, MIT, https://github.com/facebook/react - -schema-utils 1.0.0, MIT, https://github.com/webpack-contrib/schema-utils - -schema-utils 2.7.1, MIT, https://github.com/webpack/schema-utils - -schema-utils 3.0.0, MIT, https://github.com/webpack/schema-utils - -select-hose 2.0.0, MIT, https://github.com/indutny/select-hose - -selfsigned 1.10.8, MIT, https://github.com/jfromaniello/selfsigned - -semver 5.7.1, ISC, https://github.com/npm/node-semver - -semver 6.3.0, ISC, https://github.com/npm/node-semver - -semver 7.0.0, ISC, https://github.com/npm/node-semver - -semver 7.3.2, ISC, https://github.com/npm/node-semver - -semver 7.3.4, ISC, https://github.com/npm/node-semver - -semver 7.3.5, ISC, https://github.com/npm/node-semver - -send 0.17.1, MIT, https://github.com/pillarjs/send - -serialize-javascript 4.0.0, BSD-3-Clause, https://github.com/yahoo/serialize-javascript - -serialize-javascript 5.0.1, BSD-3-Clause, https://github.com/yahoo/serialize-javascript - -serve-index 1.9.1, MIT, https://github.com/expressjs/serve-index - -serve-static 1.14.1, MIT, https://github.com/expressjs/serve-static - -set-blocking 2.0.0, ISC, https://github.com/yargs/set-blocking - -set-value 2.0.1, MIT, https://github.com/jonschlinkert/set-value - -setimmediate 1.0.5, MIT, https://github.com/YuzuJS/setImmediate - -setprototypeof 1.1.0, ISC, https://github.com/wesleytodd/setprototypeof - -setprototypeof 1.1.1, ISC, https://github.com/wesleytodd/setprototypeof - -sha.js 2.4.11, (MIT AND BSD-3-Clause), https://github.com/crypto-browserify/sha.js - -shebang-command 1.2.0, MIT, https://github.com/kevva/shebang-command - -shebang-command 2.0.0, MIT, https://github.com/kevva/shebang-command - -shebang-regex 1.0.0, MIT, https://github.com/sindresorhus/shebang-regex - -shebang-regex 3.0.0, MIT, https://github.com/sindresorhus/shebang-regex - -shell-quote 1.7.2, MIT, https://github.com/substack/node-shell-quote - -shellwords 0.1.1, MIT, https://github.com/jimmycuadra/shellwords - -side-channel 1.0.4, MIT, https://github.com/ljharb/side-channel - -signal-exit 3.0.3, ISC, https://github.com/tapjs/signal-exit - -simple-swizzle 0.2.2, MIT, https://github.com/qix-/node-simple-swizzle - -sisteransi 1.0.5, MIT, https://github.com/terkelg/sisteransi - -slash 3.0.0, MIT, https://github.com/sindresorhus/slash - -slice-ansi 4.0.0, MIT, https://github.com/chalk/slice-ansi - -snapdragon-node 2.1.1, MIT, https://github.com/jonschlinkert/snapdragon-node - -snapdragon-util 3.0.1, MIT, https://github.com/jonschlinkert/snapdragon-util - -snapdragon 0.8.2, MIT, https://github.com/jonschlinkert/snapdragon - -sockjs-client 1.5.0, MIT, https://github.com/sockjs/sockjs-client - -sockjs 0.3.21, MIT, https://github.com/sockjs/sockjs-node - -sort-keys 1.1.2, MIT, https://github.com/sindresorhus/sort-keys - -source-list-map 2.0.1, MIT, https://github.com/webpack/source-list-map - -source-map-js 0.6.2, BSD-3-Clause, https://github.com/7rulnik/source-map - -source-map-resolve 0.5.3, MIT, https://github.com/lydell/source-map-resolve - -source-map-resolve 0.6.0, MIT, https://github.com/lydell/source-map-resolve - -source-map-support 0.5.19, MIT, https://github.com/evanw/node-source-map-support - -source-map-url 0.4.1, MIT, https://github.com/lydell/source-map-url - -source-map 0.5.7, BSD-3-Clause, https://github.com/mozilla/source-map - -source-map 0.6.1, BSD-3-Clause, https://github.com/mozilla/source-map - -source-map 0.7.3, BSD-3-Clause, https://github.com/mozilla/source-map - -sourcemap-codec 1.4.8, MIT, https://github.com/Rich-Harris/sourcemap-codec - -spdx-correct 3.1.1, Apache-2.0, https://github.com/jslicense/spdx-correct.js - -spdx-exceptions 2.3.0, CC-BY-3.0, https://github.com/kemitchell/spdx-exceptions.json - -spdx-expression-parse 3.0.1, MIT, https://github.com/jslicense/spdx-expression-parse.js - -spdx-license-ids 3.0.7, CC0-1.0, https://github.com/jslicense/spdx-license-ids - -spdy-transport 3.0.0, MIT, https://github.com/spdy-http2/spdy-transport - -spdy 4.0.2, MIT, https://github.com/indutny/node-spdy - -spice.ai-dashboard 0.1.0, UNLICENSED, - -split-string 3.1.0, MIT, https://github.com/jonschlinkert/split-string - -split 0.3.3, MIT, https://github.com/dominictarr/split - -sprintf-js 1.0.3, BSD-3-Clause, https://github.com/alexei/sprintf.js - -sshpk 1.16.1, MIT, https://github.com/joyent/node-sshpk - -ssri 6.0.2, ISC, https://github.com/zkat/ssri - -ssri 8.0.1, ISC, https://github.com/npm/ssri - -stable 0.1.8, MIT, https://github.com/Two-Screen/stable - -stack-utils 2.0.3, MIT, https://github.com/tapjs/stack-utils - -stackframe 1.2.0, MIT, https://github.com/stacktracejs/stackframe - -static-extend 0.1.2, MIT, https://github.com/jonschlinkert/static-extend - -statuses 1.5.0, MIT, https://github.com/jshttp/statuses - -stealthy-require 1.1.1, ISC, https://github.com/analog-nico/stealthy-require - -stream-browserify 2.0.2, MIT, https://github.com/browserify/stream-browserify - -stream-combiner 0.0.4, MIT, https://github.com/dominictarr/stream-combiner - -stream-each 1.2.3, MIT, https://github.com/mafintosh/stream-each - -stream-http 2.8.3, MIT, https://github.com/jhiesey/stream-http - -stream-shift 1.0.1, MIT, https://github.com/mafintosh/stream-shift - -strict-uri-encode 1.1.0, MIT, https://github.com/kevva/strict-uri-encode - -string-length 4.0.1, MIT, https://github.com/sindresorhus/string-length - -string-natural-compare 3.0.1, MIT, https://github.com/nwoltman/string-natural-compare - -string-width 3.1.0, MIT, https://github.com/sindresorhus/string-width - -string-width 4.2.0, MIT, https://github.com/sindresorhus/string-width - -string.prototype.matchall 4.0.4, MIT, https://github.com/ljharb/String.prototype.matchAll - -string.prototype.matchall 4.0.5, MIT, https://github.com/es-shims/String.prototype.matchAll - -string.prototype.padend 3.1.2, MIT, https://github.com/es-shims/String.prototype.padEnd - -string.prototype.trimend 1.0.3, MIT, https://github.com/es-shims/String.prototype.trimEnd - -string.prototype.trimend 1.0.4, MIT, https://github.com/es-shims/String.prototype.trimEnd - -string.prototype.trimstart 1.0.3, MIT, https://github.com/es-shims/String.prototype.trimStart - -string.prototype.trimstart 1.0.4, MIT, https://github.com/es-shims/String.prototype.trimStart - -string_decoder 1.1.1, MIT, https://github.com/nodejs/string_decoder - -string_decoder 1.3.0, MIT, https://github.com/nodejs/string_decoder - -stringify-object 3.3.0, BSD-2-Clause, https://github.com/yeoman/stringify-object - -strip-ansi 3.0.1, MIT, https://github.com/chalk/strip-ansi - -strip-ansi 5.2.0, MIT, https://github.com/chalk/strip-ansi - -strip-ansi 6.0.0, MIT, https://github.com/chalk/strip-ansi - -strip-bom 2.0.0, MIT, https://github.com/sindresorhus/strip-bom - -strip-bom 3.0.0, MIT, https://github.com/sindresorhus/strip-bom - -strip-bom 4.0.0, MIT, https://github.com/sindresorhus/strip-bom - -strip-comments 1.0.2, MIT, https://github.com/jonschlinkert/strip-comments - -strip-eof 1.0.0, MIT, https://github.com/sindresorhus/strip-eof - -strip-final-newline 2.0.0, MIT, https://github.com/sindresorhus/strip-final-newline - -strip-indent 3.0.0, MIT, https://github.com/sindresorhus/strip-indent - -strip-json-comments 3.1.1, MIT, https://github.com/sindresorhus/strip-json-comments - -style-loader 1.3.0, MIT, https://github.com/webpack-contrib/style-loader - -stylehacks 4.0.3, MIT, https://github.com/cssnano/cssnano - -supports-color 2.0.0, MIT, https://github.com/chalk/supports-color - -supports-color 5.5.0, MIT, https://github.com/chalk/supports-color - -supports-color 6.1.0, MIT, https://github.com/chalk/supports-color - -supports-color 7.2.0, MIT, https://github.com/chalk/supports-color - -supports-hyperlinks 2.1.0, MIT, https://github.com/jamestalmage/supports-hyperlinks - -svg-parser 2.0.4, MIT, https://github.com/Rich-Harris/svg-parser - -svgo 1.3.2, MIT, https://github.com/svg/svgo - -swr 0.5.6, MIT, https://github.com/vercel/swr - -symbol-tree 3.2.4, MIT, https://github.com/jsdom/js-symbol-tree - -table 6.0.7, BSD-3-Clause, https://github.com/gajus/table - -table 6.7.1, BSD-3-Clause, https://github.com/gajus/table - -tailwindcss 2.2.7, MIT, https://github.com/tailwindlabs/tailwindcss - -tapable 1.1.3, MIT, https://github.com/webpack/tapable - -tar 6.1.10, ISC, https://github.com/npm/node-tar - -temp-dir 1.0.0, MIT, https://github.com/sindresorhus/temp-dir - -tempy 0.3.0, MIT, https://github.com/sindresorhus/tempy - -terminal-link 2.1.1, MIT, https://github.com/sindresorhus/terminal-link - -terser-webpack-plugin 1.4.5, MIT, https://github.com/webpack-contrib/terser-webpack-plugin - -terser-webpack-plugin 4.2.3, MIT, https://github.com/webpack-contrib/terser-webpack-plugin - -terser 4.8.0, BSD-2-Clause, https://github.com/terser/terser - -terser 5.6.0, BSD-2-Clause, https://github.com/terser/terser - -test-exclude 6.0.0, ISC, https://github.com/istanbuljs/test-exclude - -text-table 0.2.0, MIT, https://github.com/substack/text-table - -throat 5.0.0, MIT, https://github.com/ForbesLindesay/throat - -through2 2.0.5, MIT, https://github.com/rvagg/through2 - -through 2.3.8, MIT, https://github.com/dominictarr/through - -thunky 1.1.0, MIT, https://github.com/mafintosh/thunky - -timers-browserify 2.0.12, MIT, https://github.com/jryans/timers-browserify - -timsort 0.3.0, MIT, https://github.com/mziccard/node-timsort - -tiny-invariant 1.1.0, MIT, https://github.com/alexreardon/tiny-invariant - -tiny-warning 1.0.3, MIT, https://github.com/alexreardon/tiny-warning - -tmp 0.2.1, MIT, https://github.com/raszi/node-tmp - -tmpl 1.0.5, BSD-3-Clause, https://github.com/daaku/nodejs-tmpl - -to-arraybuffer 1.0.1, MIT, https://github.com/jhiesey/to-arraybuffer - -to-fast-properties 2.0.0, MIT, https://github.com/sindresorhus/to-fast-properties - -to-object-path 0.3.0, MIT, https://github.com/jonschlinkert/to-object-path - -to-regex-range 2.1.1, MIT, https://github.com/micromatch/to-regex-range - -to-regex-range 5.0.1, MIT, https://github.com/micromatch/to-regex-range - -to-regex 3.0.2, MIT, https://github.com/jonschlinkert/to-regex - -toidentifier 1.0.0, MIT, https://github.com/component/toidentifier - -tough-cookie 2.5.0, BSD-3-Clause, https://github.com/salesforce/tough-cookie - -tough-cookie 3.0.1, BSD-3-Clause, https://github.com/salesforce/tough-cookie - -tr46 2.0.2, MIT, https://github.com/jsdom/tr46 - -tryer 1.0.1, MIT, git+https://gitlab.com/philbooth/tryer - -ts-pnp 1.2.0, MIT, https://github.com/arcanis/ts-pnp - -tsconfig-paths 3.9.0, MIT, https://github.com/dividab/tsconfig-paths - -tslib 1.14.1, 0BSD, https://github.com/Microsoft/tslib - -tslib 2.1.0, 0BSD, https://github.com/Microsoft/tslib - -tsutils 3.20.0, MIT, https://github.com/ajafff/tsutils - -tsutils 3.21.0, MIT, https://github.com/ajafff/tsutils - -tty-browserify 0.0.0, MIT, https://github.com/substack/tty-browserify - -tunnel-agent 0.6.0, Apache-2.0, https://github.com/mikeal/tunnel-agent - -tweetnacl 0.14.5, Unlicense, https://github.com/dchest/tweetnacl-js - -type-check 0.3.2, MIT, https://github.com/gkz/type-check - -type-check 0.4.0, MIT, https://github.com/gkz/type-check - -type-detect 4.0.8, MIT, https://github.com/chaijs/type-detect - -type-fest 0.11.0, (MIT OR CC0-1.0), https://github.com/sindresorhus/type-fest - -type-fest 0.20.2, (MIT OR CC0-1.0), https://github.com/sindresorhus/type-fest - -type-fest 0.3.1, (MIT OR CC0-1.0), https://github.com/sindresorhus/type-fest - -type-fest 0.6.0, (MIT OR CC0-1.0), https://github.com/sindresorhus/type-fest - -type-fest 0.8.1, (MIT OR CC0-1.0), https://github.com/sindresorhus/type-fest - -type-is 1.6.18, MIT, https://github.com/jshttp/type-is - -type 1.2.0, ISC, https://github.com/medikoo/type - -type 2.3.0, ISC, https://github.com/medikoo/type - -typedarray-to-buffer 3.1.5, MIT, https://github.com/feross/typedarray-to-buffer - -typedarray 0.0.6, MIT, https://github.com/substack/typedarray - -typescript 4.3.5, Apache-2.0, https://github.com/Microsoft/TypeScript - -unbox-primitive 1.0.1, MIT, https://github.com/ljharb/unbox-primitive - -unicode-canonical-property-names-ecmascript 1.0.4, MIT, https://github.com/mathiasbynens/unicode-canonical-property-names-ecmascript - -unicode-match-property-ecmascript 1.0.4, MIT, https://github.com/mathiasbynens/unicode-match-property-ecmascript - -unicode-match-property-value-ecmascript 1.2.0, MIT, https://github.com/mathiasbynens/unicode-match-property-value-ecmascript - -unicode-property-aliases-ecmascript 1.1.0, MIT, https://github.com/mathiasbynens/unicode-property-aliases-ecmascript - -union-value 1.0.1, MIT, https://github.com/jonschlinkert/union-value - -uniq 1.0.1, MIT, https://github.com/mikolalysenko/uniq - -uniqs 2.0.0, MIT, https://github.com/fgnass/uniqs - -unique-filename 1.1.1, ISC, https://github.com/iarna/unique-filename - -unique-slug 2.0.2, ISC, https://github.com/iarna/unique-slug - -unique-string 1.0.0, MIT, https://github.com/sindresorhus/unique-string - -universalify 0.1.2, MIT, https://github.com/RyanZim/universalify - -universalify 2.0.0, MIT, https://github.com/RyanZim/universalify - -unpipe 1.0.0, MIT, https://github.com/stream-utils/unpipe - -unquote 1.1.1, MIT, https://github.com/lakenen/node-unquote - -unset-value 1.0.0, MIT, https://github.com/jonschlinkert/unset-value - -upath 1.2.0, MIT, https://github.com/anodynos/upath - -uri-js 4.4.1, BSD-2-Clause, https://github.com/garycourt/uri-js - -urix 0.1.0, MIT, https://github.com/lydell/urix - -url-loader 4.1.1, MIT, https://github.com/webpack-contrib/url-loader - -url-parse 1.5.3, MIT, https://github.com/unshiftio/url-parse - -url 0.11.0, MIT, https://github.com/defunctzombie/node-url - -use 3.1.1, MIT, https://github.com/jonschlinkert/use - -util-deprecate 1.0.2, MIT, https://github.com/TooTallNate/util-deprecate - -util.promisify 1.0.0, MIT, https://github.com/ljharb/util.promisify - -util.promisify 1.0.1, MIT, https://github.com/ljharb/util.promisify - -util 0.10.3, MIT, https://github.com/defunctzombie/node-util - -util 0.11.1, MIT, https://github.com/defunctzombie/node-util - -utila 0.4.0, MIT, https://github.com/AriaMinaei/utila - -utils-merge 1.0.1, MIT, https://github.com/jaredhanson/utils-merge - -uuid 3.4.0, MIT, https://github.com/uuidjs/uuid - -uuid 8.3.2, MIT, https://github.com/uuidjs/uuid - -v8-compile-cache 2.2.0, MIT, https://github.com/zertosh/v8-compile-cache - -v8-to-istanbul 7.1.0, ISC, https://github.com/istanbuljs/v8-to-istanbul - -validate-npm-package-license 3.0.4, Apache-2.0, https://github.com/kemitchell/validate-npm-package-license.js - -value-equal 1.0.1, MIT, https://github.com/mjackson/value-equal - -vary 1.1.2, MIT, https://github.com/jshttp/vary - -vendors 1.0.4, MIT, https://github.com/wooorm/vendors - -verror 1.10.0, MIT, https://github.com/davepacheco/node-verror - -vm-browserify 1.1.2, MIT, https://github.com/substack/vm-browserify - -w3c-hr-time 1.0.2, MIT, https://github.com/jsdom/w3c-hr-time - -w3c-xmlserializer 2.0.0, MIT, https://github.com/jsdom/w3c-xmlserializer - -walker 1.0.7, Apache-2.0, https://github.com/daaku/nodejs-walker - -watchpack-chokidar2 2.0.1, MIT, https://github.com/webpack/watchpack - -watchpack 1.7.5, MIT, https://github.com/webpack/watchpack - -wbuf 1.7.3, MIT, https://github.com/indutny/wbuf - -web-vitals 1.1.2, Apache-2.0, https://github.com/GoogleChrome/web-vitals - -webidl-conversions 5.0.0, BSD-2-Clause, https://github.com/jsdom/webidl-conversions - -webidl-conversions 6.1.0, BSD-2-Clause, https://github.com/jsdom/webidl-conversions - -webpack-dev-middleware 3.7.3, MIT, https://github.com/webpack/webpack-dev-middleware - -webpack-dev-server 3.11.1, MIT, https://github.com/webpack/webpack-dev-server - -webpack-log 2.0.0, MIT, https://github.com/webpack-contrib/webpack-log - -webpack-manifest-plugin 2.2.0, MIT, https://github.com/danethurber/webpack-manifest-plugin - -webpack-sources 1.4.3, MIT, https://github.com/webpack/webpack-sources - -webpack 4.44.2, MIT, https://github.com/webpack/webpack - -websocket-driver 0.7.4, Apache-2.0, https://github.com/faye/websocket-driver-node - -websocket-extensions 0.1.4, Apache-2.0, https://github.com/faye/websocket-extensions-node - -whatwg-encoding 1.0.5, MIT, https://github.com/jsdom/whatwg-encoding - -whatwg-fetch 3.6.1, MIT, https://github.com/github/fetch - -whatwg-mimetype 2.3.0, MIT, https://github.com/jsdom/whatwg-mimetype - -whatwg-url 8.4.0, MIT, https://github.com/jsdom/whatwg-url - -which-boxed-primitive 1.0.2, MIT, https://github.com/inspect-js/which-boxed-primitive - -which-module 2.0.0, ISC, https://github.com/nexdrew/which-module - -which 1.3.1, ISC, https://github.com/isaacs/node-which - -which 2.0.2, ISC, https://github.com/isaacs/node-which - -word-wrap 1.2.3, MIT, https://github.com/jonschlinkert/word-wrap - -workbox-background-sync 5.1.4, MIT, https://github.com/googlechrome/workbox - -workbox-broadcast-update 5.1.4, MIT, https://github.com/googlechrome/workbox - -workbox-build 5.1.4, MIT, https://github.com/googlechrome/workbox - -workbox-cacheable-response 5.1.4, MIT, https://github.com/googlechrome/workbox - -workbox-core 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/fsnotify/fsnotify, https://github.com/fsnotify/fsnotify/blob/v1.5.4/LICENSE, BSD-3-Clause -workbox-expiration 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/gocarina/gocsv, https://github.com/gocarina/gocsv/blob/b87c2d0e983a/LICENSE, MIT -workbox-google-analytics 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/hashicorp/go-cleanhttp, https://github.com/hashicorp/go-cleanhttp/blob/v0.5.2/LICENSE, MPL-2.0 -workbox-navigation-preload 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/hashicorp/go-retryablehttp, https://github.com/hashicorp/go-retryablehttp/blob/v0.7.1/LICENSE, MPL-2.0 -workbox-precaching 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/hashicorp/hcl, https://github.com/hashicorp/hcl/blob/v1.0.0/LICENSE, MPL-2.0 -workbox-range-requests 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/logrusorgru/aurora, https://github.com/logrusorgru/aurora/blob/v2.0.3/LICENSE, Unlicense -workbox-routing 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/magiconair/properties, https://github.com/magiconair/properties/blob/v1.8.6/LICENSE.md, BSD-2-Clause -workbox-strategies 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/mattn/go-runewidth, https://github.com/mattn/go-runewidth/blob/v0.0.15/LICENSE, MIT -workbox-streams 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/mitchellh/mapstructure, https://github.com/mitchellh/mapstructure/blob/v1.5.0/LICENSE, MIT -workbox-sw 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/olekukonko/tablewriter, https://github.com/olekukonko/tablewriter/blob/v0.0.5/LICENSE.md, MIT -workbox-webpack-plugin 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/pelletier/go-toml, https://github.com/pelletier/go-toml/blob/v1.9.5/LICENSE, Apache-2.0 -workbox-window 5.1.4, MIT, https://github.com/googlechrome/workbox +github.com/pelletier/go-toml/v2, https://github.com/pelletier/go-toml/blob/v2.0.2/LICENSE, MIT -worker-farm 1.7.0, MIT, https://github.com/rvagg/node-worker-farm +github.com/pkg/browser, https://github.com/pkg/browser/blob/5ac0b6a4141c/LICENSE, BSD-2-Clause -worker-rpc 0.1.1, MIT, https://github.com/DirtyHairy/worker-rpc +github.com/rivo/uniseg, https://github.com/rivo/uniseg/blob/v0.4.6/LICENSE.txt, MIT -wrap-ansi 5.1.0, MIT, https://github.com/chalk/wrap-ansi +github.com/spf13/afero, https://github.com/spf13/afero/blob/v1.8.2/LICENSE.txt, Apache-2.0 -wrap-ansi 6.2.0, MIT, https://github.com/chalk/wrap-ansi +github.com/spf13/cast, https://github.com/spf13/cast/blob/v1.5.0/LICENSE, MIT -wrappy 1.0.2, ISC, https://github.com/npm/wrappy +github.com/spf13/cobra, https://github.com/spf13/cobra/blob/v1.6.0/LICENSE.txt, Apache-2.0 -write-file-atomic 3.0.3, ISC, https://github.com/npm/write-file-atomic +github.com/spf13/jwalterweatherman, https://github.com/spf13/jwalterweatherman/blob/v1.1.0/LICENSE, MIT -ws 6.2.2, MIT, https://github.com/websockets/ws +github.com/spf13/pflag, https://github.com/spf13/pflag/blob/v1.0.5/LICENSE, BSD-3-Clause -ws 7.4.3, MIT, https://github.com/websockets/ws +github.com/spf13/viper, https://github.com/spf13/viper/blob/v1.12.0/LICENSE, MIT -xml-name-validator 3.0.0, Apache-2.0, https://github.com/jsdom/xml-name-validator +github.com/spiceai/spiceai/bin/spice, https://github.com/spiceai/spiceai/blob/HEAD/LICENSE, Apache-2.0 -xmlchars 2.2.0, MIT, https://github.com/lddubeau/xmlchars +github.com/subosito/gotenv, https://github.com/subosito/gotenv/blob/v1.4.0/LICENSE, MIT -xtend 4.0.2, MIT, https://github.com/Raynos/xtend +go.uber.org/atomic, https://github.com/uber-go/atomic/blob/v1.9.0/LICENSE.txt, MIT -y18n 4.0.1, ISC, https://github.com/yargs/y18n +go.uber.org/multierr, https://github.com/uber-go/multierr/blob/v1.8.0/LICENSE.txt, MIT -yallist 2.1.2, ISC, https://github.com/isaacs/yallist +go.uber.org/zap, https://github.com/uber-go/zap/blob/v1.21.0/LICENSE.txt, MIT -yallist 3.1.1, ISC, https://github.com/isaacs/yallist +golang.org/x/mod/semver, https://cs.opensource.google/go/x/mod/+/v0.14.0:LICENSE, BSD-3-Clause -yallist 4.0.0, ISC, https://github.com/isaacs/yallist +golang.org/x/sys/unix, https://cs.opensource.google/go/x/sys/+/v0.16.0:LICENSE, BSD-3-Clause -yaml 1.10.0, ISC, https://github.com/eemeli/yaml +golang.org/x/text, https://cs.opensource.google/go/x/text/+/v0.14.0:LICENSE, BSD-3-Clause -yaml 1.10.2, ISC, https://github.com/eemeli/yaml +gopkg.in/ini.v1, https://github.com/go-ini/ini/blob/v1.66.6/LICENSE, Apache-2.0 -yargs-parser 13.1.2, ISC, https://github.com/yargs/yargs-parser +gopkg.in/natefinch/lumberjack.v2, https://github.com/natefinch/lumberjack/blob/v2.0.0/LICENSE, MIT -yargs-parser 18.1.3, ISC, https://github.com/yargs/yargs-parser +gopkg.in/yaml.v2, https://github.com/go-yaml/yaml/blob/v2.4.0/LICENSE, Apache-2.0 -yargs 13.3.2, MIT, https://github.com/yargs/yargs +gopkg.in/yaml.v3, https://github.com/go-yaml/yaml/blob/v3.0.1/LICENSE, MIT -yargs 15.4.1, MIT, https://github.com/yargs/yargs -yarn-run-all 3.1.1, MIT, https://github.com/mysticatea/npm-run-all +### Rust Crates -yocto-queue 0.1.0, MIT, https://github.com/sindresorhus/yocto-queue +| name | version | authors | repository | license | license_file | description | +|------|---------|---------|------------|---------|--------------|-------------| +| name | version | authors | repository | license | license_file | description | +| app | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | All loaded components from the root Spicepod and its dependencies | +| arrow | 49.0.0 | Apache Arrow | https://github.com/apache/arrow-rs | Apache-2.0 | | Rust implementation of Apache Arrow | +| arrow-flight | 49.0.0 | Apache Arrow | https://github.com/apache/arrow-rs | Apache-2.0 | | Apache Arrow Flight | +| arrow-ipc | 49.0.0 | Apache Arrow | https://github.com/apache/arrow-rs | Apache-2.0 | | Support for the Arrow IPC format | +| arrow-json | 49.0.0 | Apache Arrow | https://github.com/apache/arrow-rs | Apache-2.0 | | Support for parsing JSON format into the Arrow format | +| arrow_sql_gen | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | | +| async-stream | 0.3.5 | Carl Lerche | https://github.com/tokio-rs/async-stream | MIT | | Asynchronous streams using async & await notation | +| async-trait | 0.1.77 | David Tolnay | https://github.com/dtolnay/async-trait | Apache-2.0 OR MIT | | Type erasure for async trait methods | +| axum | 0.6.20 | | https://github.com/tokio-rs/axum | MIT | | Web framework that focuses on ergonomics and modularity | +| axum | 0.7.4 | | https://github.com/tokio-rs/axum | MIT | | Web framework that focuses on ergonomics and modularity | +| base64 | 0.21.7 | Alice Maz |Marshall Pierce | https://github.com/marshallpierce/rust-base64 | Apache-2.0 OR MIT | | encodes and decodes base64 as bytes or utf8 | +| bytes | 1.5.0 | Carl Lerche |Sean McArthur | https://github.com/tokio-rs/bytes | MIT | | Types and traits for working with bytes | +| clap | 4.5.1 | | https://github.com/clap-rs/clap | Apache-2.0 OR MIT | | A simple to use, efficient, and full-featured Command Line Argument Parser | +| datafusion | 34.0.0 | Apache Arrow | https://github.com/apache/arrow-datafusion | Apache-2.0 | | DataFusion is an in-memory query engine that uses Apache Arrow as the memory model | +| dirs | 5.0.1 | Simon Ochsenreither | https://github.com/soc/dirs-rs | Apache-2.0 OR MIT | | A tiny low-level library that provides platform-specific standard locations of directories for config, cache and other data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by the XDG base/user directory specifications on Linux, the Known Folder API on Windows, and the Standard Directory guidelines on macOS. | +| duckdb | 0.9.2 | wangfenjin | https://github.com/wangfenjin/duckdb-rs | MIT | | Ergonomic wrapper for DuckDB | +| flight_client | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | | +| flight_datafusion | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | | +| flightpublisher | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | Spice OSS Flight Publisher | +| flightrepl | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | Spice OSS Flight Query Repl | +| flightsubscriber | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | Spice OSS Flight Subscriber | +| fundu | 2.0.0 | Joining7943 | https://github.com/fundu-rs/fundu | MIT | | Configurable, precise and fast rust string parser to a Duration | +| futures | 0.3.30 | | https://github.com/rust-lang/futures-rs | Apache-2.0 OR MIT | | An implementation of futures and streams featuring zero allocations, composability, and iterator-like interfaces. | +| futures-core | 0.3.30 | | https://github.com/rust-lang/futures-rs | Apache-2.0 OR MIT | | The core traits and types in for the `futures` library. | +| indexmap | 1.9.3 | | https://github.com/bluss/indexmap | Apache-2.0 OR MIT | | A hash table with consistent order and fast iteration. | +| indexmap | 2.2.3 | | https://github.com/indexmap-rs/indexmap | Apache-2.0 OR MIT | | A hash table with consistent order and fast iteration. | +| metrics | 0.22.1 | Toby Lawrence | https://github.com/metrics-rs/metrics | MIT | | A lightweight metrics facade. | +| metrics-exporter-prometheus | 0.13.1 | Toby Lawrence | https://github.com/metrics-rs/metrics | MIT | | A metrics-compatible exporter for sending metrics to Prometheus. | +| ndarray | 0.15.6 | Ulrik Sverdrup bluss|Jim Turner | https://github.com/rust-ndarray/ndarray | Apache-2.0 OR MIT | | An n-dimensional array for general elements and for numerics. Lightweight array views and slicing; views support chunking and splitting. | +| ndarray-npy | 0.8.1 | Jim Turner | https://github.com/jturner314/ndarray-npy | Apache-2.0 OR MIT | | .npy and .npz file format support for ndarray | +| notify | 6.1.1 | Fรฉlix Saparelli |Daniel Faust |Aron Heinecke | https://github.com/notify-rs/notify.git | CC0-1.0 | | Cross-platform filesystem notification library | +| opentelemetry-proto | 0.4.0 | | https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-proto | Apache-2.0 | | Protobuf generated files and transformations. | +| parquet | 49.0.0 | Apache Arrow | https://github.com/apache/arrow-rs | Apache-2.0 | | Apache Parquet implementation in Rust | +| r2d2 | 0.8.10 | Steven Fackler | https://github.com/sfackler/r2d2 | Apache-2.0 OR MIT | | A generic connection pool | +| regex | 1.10.3 | The Rust Project Developers|Andrew Gallant | https://github.com/rust-lang/regex | Apache-2.0 OR MIT | | An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs. | +| reqwest | 0.11.24 | Sean McArthur | https://github.com/seanmonstar/reqwest | Apache-2.0 OR MIT | | higher level HTTP client library | +| runtime | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | The spiced runtime | +| rustls | 0.21.10 | | https://github.com/rustls/rustls | Apache-2.0 OR ISC OR MIT | | Rustls is a modern TLS library written in Rust. | +| rustls-native-certs | 0.6.3 | | https://github.com/ctz/rustls-native-certs | Apache-2.0 OR ISC OR MIT | | rustls-native-certs allows rustls to use the platform native certificate store | +| rustls-pemfile | 1.0.4 | | https://github.com/rustls/pemfile | Apache-2.0 OR ISC OR MIT | | Basic .pem file parser for keys and certificates | +| rustyline | 13.0.0 | Katsu Kawakami | https://github.com/kkawakam/rustyline | MIT | | Rustyline, a readline implementation based on Antirez's Linenoise | +| sea-query | 0.30.7 | Chris Tsang |Billy Chan |Ivan Krivosheev | https://github.com/SeaQL/sea-query | Apache-2.0 OR MIT | | ๐Ÿ”ฑ A dynamic query builder for MySQL, Postgres and SQLite | +| serde | 1.0.196 | Erick Tryzelaar |David Tolnay | https://github.com/serde-rs/serde | Apache-2.0 OR MIT | | A generic serialization/deserialization framework | +| serde_json | 1.0.113 | Erick Tryzelaar |David Tolnay | https://github.com/serde-rs/json | Apache-2.0 OR MIT | | A JSON serialization file format | +| serde_yaml | 0.9.31 | David Tolnay | https://github.com/dtolnay/serde-yaml | Apache-2.0 OR MIT | | YAML data format for Serde | +| snafu | 0.7.5 | Jake Goulding | https://github.com/shepmaster/snafu | Apache-2.0 OR MIT | | An ergonomic error handling library | +| snafu | 0.8.0 | Jake Goulding | https://github.com/shepmaster/snafu | Apache-2.0 OR MIT | | An ergonomic error handling library | +| spiced | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | Spice OSS | +| spicepod | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | | +| sql_provider_datafusion | 0.7.0-alpha | | https://github.com/spiceai/spiceai | Apache-2.0 | | | +| tokio | 1.36.0 | Tokio Contributors | https://github.com/tokio-rs/tokio | MIT | | An event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications. | +| tokio-stream | 0.1.14 | Tokio Contributors | https://github.com/tokio-rs/tokio | MIT | | Utilities to work with `Stream` and `tokio`. | +| toml | 0.8.10 | Alex Crichton | https://github.com/toml-rs/toml | Apache-2.0 OR MIT | | A native Rust encoder and decoder of TOML-formatted files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures. | +| tonic | 0.9.2 | Lucio Franco | https://github.com/hyperium/tonic | MIT | | A gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility. | +| tonic | 0.10.2 | Lucio Franco | https://github.com/hyperium/tonic | MIT | | A gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility. | +| tracing | 0.1.40 | Eliza Weisman |Tokio Contributors | https://github.com/tokio-rs/tracing | MIT | | Application-level tracing for Rust. | +| tracing-subscriber | 0.3.18 | Eliza Weisman |David Barsky |Tokio Contributors | https://github.com/tokio-rs/tracing | MIT | | Utilities for implementing and composing `tracing` subscribers. | +| tract-core | 0.21.1 | Mathieu Poumeyrol | https://github.com/snipsco/tract | Apache-2.0 OR MIT | | Tiny, no-nonsense, self contained, TensorFlow and ONNX inference | +| tract-onnx | 0.21.1 | Mathieu Poumeyrol | https://github.com/snipsco/tract | Apache-2.0 OR MIT | | Tiny, no-nonsense, self contained, TensorFlow and ONNX inference | +| uuid | 1.7.0 | Ashley Mannix|Christopher Armstrong|Dylan DPC|Hunar Roop Kahlon | https://github.com/uuid-rs/uuid | Apache-2.0 OR MIT | | A library to generate and parse UUIDs. | \ No newline at end of file diff --git a/spiceaidocs/content/en/api/_index.md b/spiceaidocs/content/en/api/_index.md deleted file mode 100644 index 5da7e9b0..00000000 --- a/spiceaidocs/content/en/api/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -type: swagger -title: "Spice.ai API documentation" -linkTitle: "API" -weight: 60 -description: "OpenAPI documentation for the Spice.ai API" ---- - -{{< swaggerui src="/openapi/spiceai.yaml" >}} diff --git a/spiceaidocs/content/en/cli/_index.md b/spiceaidocs/content/en/cli/_index.md index 278c56a0..2665bbe5 100644 --- a/spiceaidocs/content/en/cli/_index.md +++ b/spiceaidocs/content/en/cli/_index.md @@ -32,27 +32,29 @@ A typical command-line workflow might be as follows: spice run ``` -In another terminal: +Run new shell in the same folder: ```bash -# Add a pod -spice add samples/gardener -# Re-train -spice train gardener +# Init new app +spice init spice_app + +# Add the Quickstart Spicepod +spice add spiceai/quickstart + ``` Common commands are: -| Command | Description | -| ------------- | ------------------------------------------- | -| spice add | Add a pod to `spicepods` | -| spice run | Starts the Spice.ai runtime | -| spice train | Starts a pod training run | -| spice version | Shows the Spice.ai CLI and runtime versions | -| spice help | Help about any command | -| spice upgrade | Upgrade the CLI to latest version | +| Command | Description | +| ----------------- | ------------------------------------------------------------------- | +| spice add | Add Pod - adds a pod to the project | +| spice run | Run Spice - starts the Spice runtime, installing if necessary | +| spice version | Spice CLI version | +| spice help | Help about any command | +| spice upgrade | Upgrades the Spice CLI to the latest release | -See [Spice.ai CLI command reference]({{}}) for the full list of available commands. + +See [Spice CLI command reference]({{}}) for the full list of available commands. ## Updating @@ -75,9 +77,3 @@ spice upgrade The Spice.ai CLI is installed by default to `$HOME/.spice/bin/spice` and a line added to the shell config, such as `.zshrc` It can be uninstalled by deleting the `spice` binary and removing the PATH addition from the rc file. - -Find all of the Docker images that were installed by running: - -```bash -docker image ls -f reference="ghcr.io/spiceai/*" -``` diff --git a/spiceaidocs/content/en/cli/reference/_index.md b/spiceaidocs/content/en/cli/reference/_index.md index 53fe74c8..e338aea4 100644 --- a/spiceaidocs/content/en/cli/reference/_index.md +++ b/spiceaidocs/content/en/cli/reference/_index.md @@ -16,66 +16,21 @@ spice [command] [--help] ## Full Command Reference -| Command | Description | -| ----------------------- | ----------------------------------------------- | -| spice action | Manage actions | -| spice add | Add a pod to `spicepods` | -| [spice export](#Export) | Export a pod | -| [spice import](#Import) | Import a pod | -| spice init | Initialize a new pod | -| spice reward | Manages rewards | -| [spice run](#Run) | Starts the Spice.ai runtime | -| [spice train](#Train) | Starts a pod training run | -| spice version | Shows the Spice.ai CLI and runtime versions | -| spice help | Help about any command | -| spice completion | Generates the autocompletion script for a shell | -| spice pods list | Retrieve pods currently loaded in the runtime | -| spice upgrade | Upgrade CLI to the latest version | +| Command | Description | +| ----------- | --------------------------------------------------------------------| +| add | Add Pod - adds a pod to the project | +| completion | Generate the autocompletion script for the specified shell | +| dataset | Dataset operations | +| help | Help about any command | +| init | Initialize Pod - initializes a new pod in the project | +| login | Login to Spice.ai | +| run | Run Spice.ai - starts the Spice.ai runtime, installing if necessary | +| sql | Start an interactive SQL query session against the Spice.ai runtime | +| upgrade | Upgrades the Spice CLI to the latest release | +| version | Spice CLI version | ## Command Flags All commands have a help flag **--help** or **-h** to print its usage documentation: - **--help** | **-h** : Print the help message - -### Export - -```bash -spice export [--tag ] [--overwrite] [--output ] -``` - -- **--tag ** : The tag to export the model from (default: "latest") -- **--overwrite** : Overwrite a file that already exists -- **--output ** | **-o ** : The output directory (default: ".") - -### Import - -```bash -spice import [--tag ] -``` - -- **--tag ** : Specify which tag to import the model to (default: "latest") - -### Run - -```bash -spice run [--context ] -``` - -- **--context ** : Runs Spice.ai in the given context, either 'docker' or 'metal' (default: "docker") - -### Train - -```bash -spice train [--context ] [--learning-algorithm ] -``` - -- **--context ** : Runs Spice.ai in the given context, either 'docker' or 'metal' (default: "docker") -- **--learning-algorithm ** : Train the pod with specified algorithm (default: "dql" or inherited from pod) -- **--loggers **: Train the pod with the specified comma-seperated list of loggers - -### Pods - -```bash -spice pods list -``` diff --git a/spiceaidocs/content/en/concepts/_index.md b/spiceaidocs/content/en/concepts/_index.md index cf876a62..2f3c4d3d 100644 --- a/spiceaidocs/content/en/concepts/_index.md +++ b/spiceaidocs/content/en/concepts/_index.md @@ -6,54 +6,40 @@ weight: 10 no_list: true --- -## Spice.ai CLI +## What is Spice? -The `spice` command line tool for interacting with the Spice.ai runtime during development. View the [CLI reference]({{}}) to learn more. - -## Spice.ai Runtime - -The Spice.ai core runtime which runs as the daemon `spiced` and includes the AI and Data engines. The runtime also serves the [Spice.ai API]({{}}). - -## [spicerack.org](https://spicerack.org) - -The registry [spicerack.org](https://spicerack.org) of Spice.ai pods that can be fetched with the Spice.ai CLI. +**Spice** is a portable runtime that provides developers with a unified SQL query interface to locally accelerate and query data tables sourced from any database, data warehouse, or data lake. -## Pod +Spice makes it easy to build data-driven and data-intensive applications by streamlining the use of data and machine learning (ML) in software. -A `Pod` is a package of configuration and data used to train and deploy Spice.ai with an application. +The Spice runtime is written in Rust and leverages industry leading technologies like Apache DataFusion, Apache Arrow, Apache Arrow Flight, and DuckDB. -A `Pod manifest` is a YAML file that describes how to connect data with a learning environment. +## Why Spice? -A Pod is constructed from the following components: +Spice makes querying data by SQL across one or more data sources simple and fast. Easily co-locate a managed working set of your data with your application or ML, locally accelerated in-memory, with DuckDB, or with an attached database like PostgreSQL for high-performance, low-latency queries. -### Dataspace +### Before Spice -A [dataspace]({{}}) is a specification on how the Spice.ai runtime and AI engine loads, processes and interacts with data from a single source. A dataspace may contain a single data connector and data processor. There may be multiple dataspace definitions within a pod. The fields specified in the union of dataspaces are used as inputs to the neural networks that Spice.ai trains. +old -A dataspace that doesn't contain a data connector/processor means that the observation data for this dataspace will be provided by calling [POST /pods/{pod}/observations]({{}}). +### With Spice -### Data Connector +new -A [data connector]({{}}) is a reuseable component that contains logic to fetch or ingest data from an external source. Spice.ai provides a general interface that anyone can implement to create a data connector, see the [data-components-contrib](https://github.com/spiceai/data-components-contrib/tree/trunk/dataconnectors) repo for more information. +## Spice CLI -### Data Processor - -A [data processor]({{}}) is a reusable component, composable with a data connector that contains logic to process raw connector data into [observations]({{}}) and state Spice.ai can use. - -Spice.ai provides a general interface that anyone can implement to create a data processor, see the [data-components-contrib](https://github.com/spiceai/data-components-contrib/tree/trunk/dataprocessors) repo for more information. - -### Actions +The `spice` command line tool for interacting with the Spice.ai runtime during development. View the [CLI reference]({{}}) to learn more. -[Actions]({{}}) are the set of actions the Spice.ai runtime can recommend for a pod. +## Spice Runtime -### Recommendations +The Spice core runtime which runs as the daemon `spiced` and includes the ML and Data engines. -To intelligently adapt its behavior, an application should query the Spice.ai runtime for which [action]({{}}) it recommends to take given a specified time. The result of this query is a [recommendation]({{}}). +## [spicerack.org](https://spicerack.org) -If a time is not specified, the resulting recommendation query time will default to the time of the most recently ingested observation. +The registry [spicerack.org](https://spicerack.org) of Spice.ai pods that can be fetched with the Spice.ai CLI. -### Training Rewards +## Spicepod -[Training Rewards]({{}}) are code definitions in Python that tell the Spice.ai AI Engine how to train the neural networks to achieve the desired goal. A reward is defined for each action specified in the pod. +A `Spicepod` is a package of configuration and data used to train and deploy Spice.ai with an application. -In the future we will expand the languages we support for writing the reward functions in. [Let us know](mailto:hey@spiceai.io) which language you want to be able to write your reward functions in! +A `Spicepod manifest` is a YAML file that describes how to connect data with a learning environment. diff --git a/spiceaidocs/content/en/concepts/dataspaces/_index.md b/spiceaidocs/content/en/concepts/dataspaces/_index.md deleted file mode 100644 index 11860c68..00000000 --- a/spiceaidocs/content/en/concepts/dataspaces/_index.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -type: docs -title: "Dataspaces" -linkTitle: "Dataspaces" -weight: 20 -description: "Reference documentation for Spice.ai Dataspaces" ---- - -A **dataspace** is a logical grouping of data with definitions of how that data should be loaded and processed, usually from a single source. - -A combination of its [data source](https://github.com/spiceai/data-components-contrib/tree/trunk/dataprocessors) and its [name](https://github.com/spiceai/data-components-contrib/tree/trunk/dataprocessors) identifies it, for example, `nasdaq/msft` or `twitter/tweets`. - -The [dataspaces node](https://github.com/spiceai/data-components-contrib/tree/trunk/dataprocessors) of the [Spicepod manifest](https://docs.spiceai.org/reference/pod/) may hold one or more dataspace definitions. The runtime will merge data from all pod dataspaces into observations. - -Each dataspace encapsulates definitions for its core data primitives, such as [measurements](https://docs.spiceai.org/reference/pod/#dataspacesmeasurements) (numerical data), [categories](https://docs.spiceai.org/reference/pod/#dataspacescategories) (string-based categorical data), and [tags](https://docs.spiceai.org/reference/pod/#dataspacestags) (string-based tags). It also includes configuration for data connector and data processor components to load and process data into those primitives. - -While measurements and categories are scoped to the dataspace namespace, tags are aggregated with tags from other dataspaces to the pod scope. - -Dataspaces may load data through a [data connector](https://docs.spiceai.org/concepts/#data-connector) and [processor](https://docs.spiceai.org/concepts/#data-processor) or through the POST [/pods/{pod}/observations]({{}}) API. The API accepts JSON or CSV data and uses the appropriate [JSON](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/json/README.md) or [CSV](https://github.com/spiceai/data-components-contrib/tree/trunk/dataprocessors/csv) data processor. - -Data connectors and processors are community-maintained components for streaming and processing time-series data. More information can be found in the [data-components-contrib](https://github.com/spiceai/data-components-contrib) repository. - -### Reference - -- List of [supported data connectors](https://github.com/spiceai/data-components-contrib/tree/trunk/dataconnectors/README.md) -- List of [supported data processors](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/README.md) -- [API Reference]({{}}) diff --git a/spiceaidocs/content/en/concepts/interpretations/_index.md b/spiceaidocs/content/en/concepts/interpretations/_index.md deleted file mode 100644 index cfde1505..00000000 --- a/spiceaidocs/content/en/concepts/interpretations/_index.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -type: docs -title: "Interpretations" -linkTitle: "Interpretations" -weight: 15 -description: "Reference documentation for Spice.ai Intepretations" ---- - -- [API Reference]({{}}) - -Interpretations provide a way to define meaning for a time range within a pod period. For example, for a stock trading pod with a period of Monday to Friday, an interpretation of that time range could be, from Tuesday to Wednesday is a good time to buy. - -An example interpretation defined in JSON is as follows: - -```json -{ - "start": 1605333600, - "end": 1605333601, - "name": "e2e-test-interpretation", - "actions": [ - "small_buy", - ], - "tags": [ - "mytag", - ] - }, -``` - -The interpretation is defined as a time range from `start` to `end`, with a `name` and a list of `actions` and `tags`. - -Interpretations can be used to provide hints to the reward function on how to reward a time step. In the above example, when the training reaches Tuesday, the reward function author might choose to reward buys even higher based on that expert input. - -When the action specific reward function is called, if there is an interpretation in that time range, it will be provided to the reward function in `[state]_interpretations`. E.g. if an interpretation overlapped with new state then `next_state_interpretations` would contain a list of the overlapping interpretations. - -Comparing Spice.ai recommendations to interpretations is also one way of testing Spice.ai recommendations against expected actions for input data. diff --git a/spiceaidocs/content/en/concepts/recommendations/_index.md b/spiceaidocs/content/en/concepts/recommendations/_index.md deleted file mode 100644 index f57a6b9f..00000000 --- a/spiceaidocs/content/en/concepts/recommendations/_index.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -type: docs -title: "Recommendations" -linkTitle: "Recommendations" -weight: 13 -description: "Reference documentation for Spice.ai Recommendations" ---- - -- [API Reference]({{}}) - -Recommendations are core to making intelligent apps that learn and adapt. - -Adaptive applications use Spice.ai Recommendations to inform their behavior and decisions on what actions to take during their operation. Each recommendation includes a confidence score, from zero to one. Applications should decide on the appropriate level of confidence for its given scenario as to act upon the recommendation or not. - -Valid recommendations (confidence scores greater than zero) are returned after the first training run for a pod is complete. - -If a time is not specified, the resulting recommendation query time will default to the time of the most recently ingested observation within the pod period. - -## API Format - -Get a recommendation using the latest ingested observation time: - -`GET http://localhost:8000/api/v0.1/pods/{pod}/recommendation` - -Get a recommendation for a specified time: - -`GET http://localhost:8000/api/v0.1/pods/{pod}/recommendation?time={unix_timestamp}` - -where `{unix_timestamp}` is specified in [Unix time](https://en.wikipedia.org/wiki/Unix_time) in seconds. See [Time]({{}}) for more information on how Spice.ai handles time. - -## Example - -For `quickstarts/trader` a valid request at a specific time is: - -`GET http://localhost:8000/api/v0.1/pods/trader/recommendation?time=1605729600` diff --git a/spiceaidocs/content/en/concepts/rewards/_index.md b/spiceaidocs/content/en/concepts/rewards/_index.md deleted file mode 100644 index 98048142..00000000 --- a/spiceaidocs/content/en/concepts/rewards/_index.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -type: docs -title: "Rewards" -linkTitle: "Rewards" -weight: 15 -description: "Documentation for authoring Spice.ai rewards" ---- - -The Spice.ai engine learns and provides recommendations to your application using a type of AI called deep reinforcement learning. To learn more, see [Deep Learning AI]({{}}). - -A fundamental concept in deep reinforcement learning is to reward actions a learning agent takes during a training run. These rewards are numerical values and can be negative or positive. - -In Spice.ai, developers define the rewards the AI engine uses in training runs through reward function definitions. Reward functions are Python functions (with more languages supported in the future) and can be authored either inline in the Spicepod manifest YAML or a separate Python `.py` file. - -To see how to define reward functions using an external file, click [here]({{}}). - -## Rewards in YAML - -To define the reward functions in the YAML directly, put the Python code fragment in the `with` node. - -The reward function must assign a value to `reward` for it to be valid. - -The following variables are available to be used in the reward function: - -| variable | Type | Description | -| ------------- | ---------------------------------------------------------------------- | --------------------------------------------------------------------- | -| current_state | [dict](https://docs.python.org/3.8/library/stdtypes.html#typesmapping) | The observation state when the action was taken | -| next_state | [dict](https://docs.python.org/3.8/library/stdtypes.html#typesmapping) | The observation state one granularity step after the action was taken | - -### Example - -See the full example manifest [here]({{}}). - -```yaml -training: - rewards: - - reward: close_valve - # Reward keeping moisture content above 25% - with: | - if next_state["sensors_garden_moisture"] > 0.25: - reward = 200 - - # Penalize low moisture content depending on how far the garden has dried out - else: - reward = -100 * (0.25 - next_state["sensors_garden_moisture"]) - - # Penalize especially heavily if the drying trend is continuing (next_state is drier than current_state) - if next_state["sensors_garden_moisture"] < current_state["sensors_garden_moisture"]: - reward = reward * 2 - - - reward: open_valve_half - # Reward watering when needed, more heavily if the garden is more dried out - with: | - if next_state["sensors_garden_moisture"] < 0.25: - reward = 100 * (0.25 - next_state["sensors_garden_moisture"]) - - # Penalize wasting water - # Penalize overwatering depending on how overwatered the garden is - else: - reward = -50 * (next_state["sensors_garden_moisture"] - 0.25) - - - reward: open_valve_full - # Reward watering when needed, more heavily if the garden is more dried out - with: | - if next_state["sensors_garden_moisture"] < 0.25: - reward = 200 * (0.25 - next_state["sensors_garden_moisture") - - # Penalize wasting water more heavily with valve fully open - # Penalize overwatering depending on how overwatered the garden is - else: - reward = -100 * (next_state["sensors_garden_moisture"] - 0.25) -``` diff --git a/spiceaidocs/content/en/concepts/rewards/external.md b/spiceaidocs/content/en/concepts/rewards/external.md deleted file mode 100644 index d1718f93..00000000 --- a/spiceaidocs/content/en/concepts/rewards/external.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -type: docs -title: "Reward Function Files" -linkTitle: "Reward Function Files" -weight: 15 ---- - -Reward functions may be defined in a single Python (.py) file. - -This file may be authored in standard Python3.8+ code and the file may define global functions and import packages. - -The packages that can be imported are limited to what is [imported by the AI Engine](https://github.com/spiceai/spiceai/blob/trunk/ai/src/requirements/common.txt). - -## Action Reward - -For each action defined in the Spicepod manifest, a corresponding function (i.e. action reward) should be defined in the Python file. The mapping of action to function name is specified in the manifest using the `with` node. - -Each reward function should match the following function signature, with the function name matching that defined in the Spicepod manifest. - -```python -def reward_for_action(current_state: dict, current_state_interpretations: list, next_state: dict, next_state_interpretations: list) -> float: - """ - Returns a reward given the action and observation space - - Args: - action_name: The name of the action to generate a reward for - current_state: Value of the observation state when the action was recommended - current_state_interpretations: Array of interpretations for current_state - next_state: Value of the observation state that immediately follows current_state - next_state_interpretations: Array of interpretations for next_state - - Note: As interactive environments are not fully supported, it may not make sense to use - next_state when calculating the reward - - Returns: - (float): The reward that the agent should receive for taking this action. - """ -``` - -Learn more about interpretations [here]({{}}). - -### Example - -For the following manifest: - -```yaml -training: - reward_funcs: my_reward.py - rewards: - - reward: buy - with: buy_reward - - reward: sell - with: sell_reward - - reward: hold - with: hold_reward -``` - -Author a Python file with the following content to define the reward functions: - -`my_reward.py` - -```python -def buy_reward(current_state: dict, current_state_interps, next_state: dict, next_state_interps) -> float: - return complex_calculation(current_state) - -def sell_reward(current_state: dict, current_state_interps, next_state: dict, next_state_interps) -> float: - return current_state["price"] - next_state["price"] - -def hold_reward(current_state: dict, current_state_interps, next_state: dict, next_state_interps) -> float: - return 1 -``` diff --git a/spiceaidocs/content/en/concepts/time/_index.md b/spiceaidocs/content/en/concepts/time/_index.md deleted file mode 100644 index 5a4c1d00..00000000 --- a/spiceaidocs/content/en/concepts/time/_index.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -type: docs -title: "Time" -linkTitle: "Time" -weight: 5 -description: "The concept of Time and Time-Series in Spice.ai" ---- - -Spice.ai is a time series AI platform, so time is one of Spice.ai's most fundamental and core concepts. - -## What is time series data? - -Time series data is a series of timestamped data points or events indexed in time order. In Spice.ai, these data points are called Observations. For example, temperature sensor readings on an interval or a daily stock price are examples of time series data. Time series data applies to many domains, including analytics, finance, health and biometrics, IoT and industrial, security, and application monitoring. To learn more, Wikipedia has a comprehensive article on [time series](https://en.wikipedia.org/wiki/Time_series), and InfluxData has published a very informative article, [What is time series data?](https://www.influxdata.com/what-is-time-series-data/) - -## Why time series AI? - -One definition of artificial intelligence proposed by [Hado van Hasselt from DeepMind](https://www.youtube.com/watch?v=TCCjZe0y4Qc&list=PLqYmG7hTraZDVH599EItlEWsUOsJbAodm) is "to be able to learn to make decisions to achieve goals." Using this definition can conclude that these decisions are made over time to achieve an application's goals. Thus, time and time-series data can be seen as fundamental concepts when developing an application's intelligence. - -## Time series in Spice.ai - -Spice.ai natively ingests, processes, and learns from time series data. There are three core time series concepts in Spice.ai: - -- A time series **Period** and its period **Epoch** -- Consecutive **intervals** or windows of time series observations -- The smallest **granularity** of time in the series -A visualization of these concepts over a timeline is below: - -spiceai-time - -Each of these concepts translates to developer configurable parameters in the Spicepod. For example, the Trader Sample uses these pod parameters in its manifest: - -```yaml -name: trader -params: - period: 30m - interval: 30s - granularity: 5s -``` - -If not provided in the manifest, Spicepods will default to a period of **3 days**, intervals of **1 min**, and granularity of **10 seconds**. The period epoch will default to a dynamic epoch of the current time minus the period. In this mode, the period becomes a sliding window over time. - -See reference documentation for [Spicepod params]({{}}). - -### Period - -The `period` defines the entire timespan the Spicepod will use for learning and decision-making. - -Thus the time series period has a start time of `epoch` and an end time of `epoch` + `period`. - -### Period Epoch - -The period `epoch` defines the beginning, or start, of the Spicepod's time series data. Spice.ai will discard data timestamped before the epoch time. - -The epoch defaults to the current time - `period`. - -### Interval - -The `interval` defines the interval or window of time the AI engine uses to learn. - -The first interval of data, from `epoch` to `epoch` + `interval` is considered pre-training or "warm-up" data. At least one interval's worth of data is required before the AI engine can learn and make a decision recommendation. - -The AI engine then trains on consecutive data intervals for the rest of the period to learn. - -### Granularity - -The `granularity` defines the smallest unit of time series data. The granularity can be conceptualized in practice as the time a decision is valid. For example, a decision to turn on or off an air conditioner would be valid for a `granularity` unit of time. - -Spice.ai will aggregate observations within a granularity timespan. This aggregation results in granularity-sized "ticks" or time-steps in the series. - -Each consecutive training interval advances by a unit of granularity over the entire period. Thus, the granularity cannot be larger than the interval. diff --git a/spiceaidocs/content/en/deep-learning-ai/_index.md b/spiceaidocs/content/en/deep-learning-ai/_index.md deleted file mode 100644 index 4abe2d44..00000000 --- a/spiceaidocs/content/en/deep-learning-ai/_index.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -type: docs -title: "Deep Learning AI" -linkTitle: "Deep Learning AI" -weight: 40 ---- - -The Spice.ai engine learns and provides recommendations to your application using a type of AI called deep reinforcement learning. - -Reinforcement learning (RL) is a general framework where agents learn to perform actions in an environment so as to maximize a reward according to a policy. In deep reinforcement learning, the policy is trained by a neural network based on a deep learning algorithm. - -The agent and environment continuously interact with each other. At each time step, the agent takes an action on the observation space based on its policy (aka brain), and receives a reward and the next observation from the environment. The goal is to improve the policy so as to maximize the sum of rewards (score). - -Spice.ai provides a standard interface that a deep learning algorithm can be implemented with. At launch Spice.ai supports two deep learning algorithms and more will be added over time. - -By default, Spice.ai will use [Deep Q-Learning]({{}}). To use a different algorithm, call `spice train` with the parameter `--learning-algorithm` set to one of the following values: - -| --learning-algorithm | Algorithm | -| -------------------- | ---------------------------------------------------------------- | -| dql | [Deep Q-Learning]({{}}) | -| vpg | [Vanilla Policy Gradient]({{}}) | -| sacd | [Soft Actor-Critic (Discrete)]({{}}) | - -**Example** - -```bash -spice train --learning-algorithm vpg -``` diff --git a/spiceaidocs/content/en/deep-learning-ai/dql.md b/spiceaidocs/content/en/deep-learning-ai/dql.md deleted file mode 100644 index b99e957d..00000000 --- a/spiceaidocs/content/en/deep-learning-ai/dql.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -type: docs -title: "Deep Q-Learning" -linkTitle: "Deep Q-Learning" -weight: 50 -description: Spice.ai implementation of the Deep Q Learning algorithm (DQL) ---- - -The DQN (Deep Q-Network) algorithm was developed by DeepMind in 2015. It was able to solve a wide range of Atari games (some to superhuman level) by combining reinforcement learning and deep neural networks at scale. The algorithm was developed by enhancing a classic RL algorithm called Q-Learning with deep neural networks and a technique called experience replay. - -Learn more about the Deep Q-Network algorithm at https://www.tensorflow.org/agents/tutorials/0_intro_rl diff --git a/spiceaidocs/content/en/deep-learning-ai/interface.md b/spiceaidocs/content/en/deep-learning-ai/interface.md deleted file mode 100644 index 18897b85..00000000 --- a/spiceaidocs/content/en/deep-learning-ai/interface.md +++ /dev/null @@ -1,78 +0,0 @@ ---- -type: docs -title: "Interface" -linkTitle: "Interface" -weight: 30 -description: Learn how to add a new deep RL algorithm by implementing the Spice.ai interface ---- - -Implement a deep RL agent that is compatible with Spice.ai by implementing the following interface. This interface lives in code at: https://github.com/spiceai/spiceai/blob/trunk/ai/src/algorithms/agent_interface.py - -```python -""" -The interface that all Spice.ai compatible deep-RL agents should conform to. -""" - -class SpiceAIAgent(): - """ - Args: - state_shape: The shape of the observation state - action_size: How many actions our agent is able to take. - """ - - def __init__(self, state_shape, action_size): - self.state_shape = state_shape - self.action_size = action_size - - def act(self, state) -> Tuple[int, list]: - """ - Returns an action recommended by the algorithm's policy for the current state - - Args: - state: The observation state to act upon - - Returns: - (int): The action to take, as an integer that can index into the array of defined actions. - (list): The probabilities of each action. - """ - raise NotImplementedError() - - def add_experience(self, state, action, reward, next_state): - """ - Adds the experience of the reward from taking this action at that state - - Args: - state: The observation state when the action was taken - action: The action that was performed - reward: The reward that was received for taking that action - next_state: The observation state after the action was taken - """ - raise NotImplementedError() - - def learn(self): - """ - Updates the algorithm's policy based on its collected experiences so far. - """ - raise NotImplementedError() - - def save(self, model_path: str): - """ - Save the trained model to disk - - Args: - model_path: The path on disk to save the model parameters to - """ - raise NotImplementedError() - - def load(self, model_path: str) -> bool: - """ - Load a previously trained model from disk. Returns whether it was able to load the model. - - Args: - model_path: The path on disk to load the model parameters from - - Returns: - (bool) Whether the model was able to be loaded properly - """ - raise NotImplementedError() -``` diff --git a/spiceaidocs/content/en/deep-learning-ai/sac.md b/spiceaidocs/content/en/deep-learning-ai/sac.md deleted file mode 100644 index a728394d..00000000 --- a/spiceaidocs/content/en/deep-learning-ai/sac.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -type: docs -title: "Soft Actor-Critic" -linkTitle: "Soft Actor-Critic" -weight: 50 -description: Spice.ai implementation of the Soft Actor-Critic algorithm (SAC) ---- - -The SAC (Soft Actor-Critic) algorithm was developed in 2018. It is a off-policy, model-free reinforcement learning algorithm that aims not only at maximizing the reward but also the entropy (acting as randomly as possible). The entropy maximization helps exploring possibilities and trying actions that seems to be equally rewarding. - -The Spice.ai implementation of Soft Actor-Critic has been modified to work for discrete action sets. - -Berkeley AI Research blog: https://bair.berkeley.edu/blog/2018/12/14/sac/ -Arxiv paper: https://arxiv.org/abs/1801.01290 diff --git a/spiceaidocs/content/en/deep-learning-ai/vpg.md b/spiceaidocs/content/en/deep-learning-ai/vpg.md deleted file mode 100644 index bfc800fc..00000000 --- a/spiceaidocs/content/en/deep-learning-ai/vpg.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -type: docs -title: "Vanilla Policy Gradient" -linkTitle: "Vanilla Policy Gradient" -weight: 40 -description: Spice.ai implementation of the Vanilla Policy Gradient algorithm (VPG) ---- - -The key idea underlying policy gradients is to push up the probabilities of -actions that lead to higher return, and push down the probabilities of actions -that lead to lower return, until you arrive at the optimal policy. - -## Exploration vs. Exploitation - -VPG trains a stochastic policy in an on-policy way. This means that it explores -by sampling actions according to the latest version of its stochastic policy. -The amount of randomness in action selection depends on both initial conditions -and the training procedure. Over the course of training, the policy typically -becomes progressively less random, as the update rule encourages it to exploit -rewards that it has already found. This may cause the policy to get trapped in local optima. - -Learn more about the Vanilla Policy Gradient algorithm at https://spinningup.openai.com/en/latest/algorithms/vpg.html diff --git a/spiceaidocs/content/en/getting-started/_index.md b/spiceaidocs/content/en/getting-started/_index.md index 27280c50..c594459d 100644 --- a/spiceaidocs/content/en/getting-started/_index.md +++ b/spiceaidocs/content/en/getting-started/_index.md @@ -13,11 +13,123 @@ Before following this guide it is first recommended to review the Spice.ai [core ### Follow these steps to get started with Spice.ai. -1. Install Spice.ai -1. Create your first Spice.ai pod and train it -1. Observe your pod training -1. Get a recommendation from your pod -1. Explore Spice.ai quickstarts +**Step 1.** Install the Spice CLI: +```bash +curl https://install.spiceai.org | /bin/bash +``` -{{< button text="First step: Install Spice.ai >>" page="install-spiceai" >}} +**Step 2.** Initialize a new Spice app with the `spice init` command: + +```bash +spice init spice_app +``` + +A `Spicepod.yaml` file is created in the working directory. + +**Step 3.** Connect to the sample Dremio instance to access the sample data: + +```bash +spice login dremio -u demo -p demo1234 +``` + +**Step 4.** Start the Spice runtime: + +```bash +spice run +``` + +Example output will be shown as follows: + +```bash +Spice.ai runtime starting... +Using latest 'local' runtime version. +2024-02-21T06:11:56.381793Z INFO runtime::http: Spice Runtime HTTP listening on 127.0.0.1:3000 +2024-02-21T06:11:56.381853Z INFO runtime::flight: Spice Runtime Flight listening on 127.0.0.1:50051 +2024-02-21T06:11:56.382038Z INFO runtime::opentelemetry: Spice Runtime OpenTelemetry listening on 127.0.0.1:50052 +``` + +The runtime is now started and ready for queries. + +**Step 5.** In a new terminal window, add the `spiceai/quickstart` Spicepod. A Spicepod is a package of configuration defining datasets and ML models. + +```bash +spice add spiceai/quickstart +``` + +The `Spicepod.yaml` file will be updated with the `spiceai/quickstart` dependency. + +```yaml +version: v1beta1 +kind: Spicepod +name: PROJECT_NAME +dependencies: + - spiceai/quickstart +``` + +The `spiceai/quickstart` Spicepod will add a `taxi_trips` data table to the runtime which is now available to query by SQL. + +```bash +2024-02-22T05:53:48.222952Z INFO runtime: Loaded dataset: taxi_trips +2024-02-22T05:53:48.223101Z INFO runtime::dataconnector: Refreshing data for taxi_trips +``` + +**Step 6.** Start the Spice SQL REPL: + +```bash +spice sql +``` + +The SQL REPL inferface will be shown: + +``` +Welcome to the interactive Spice.ai SQL Query Utility! Type 'help' for help. + +show tables; -- list available tables +sql> +``` + +Enter `show tables;` to display the available tables for query: + +``` +sql> show tables; + ++---------------+--------------------+-------------+------------+ +| table_catalog | table_schema | table_name | table_type | ++---------------+--------------------+-------------+------------+ +| datafusion | public | taxi_trips | BASE TABLE | +| datafusion | information_schema | tables | VIEW | +| datafusion | information_schema | views | VIEW | +| datafusion | information_schema | columns | VIEW | +| datafusion | information_schema | df_settings | VIEW | ++---------------+--------------------+-------------+------------+ + +Query took: 0.004728897 seconds +``` + +Enter a query to display the most expensive tax trips: + +``` +sql> SELECT trip_distance_mi, fare_amount FROM taxi_trips ORDER BY fare_amount LIMIT 10; +``` + +Output: + +``` ++------------------+-------------+ +| trip_distance_mi | fare_amount | ++------------------+-------------+ +| 1.1 | 7.5 | +| 6.1 | 23.0 | +| 0.6 | 4.5 | +| 16.7 | 52.0 | +| 11.3 | 37.5 | +| 1.1 | 6.0 | +| 5.3 | 18.5 | +| 1.3 | 7.0 | +| 1.0 | 7.0 | +| 3.5 | 17.5 | ++------------------+-------------+ + +Query took: 0.002458976 seconds +``` \ No newline at end of file diff --git a/spiceaidocs/content/en/getting-started/install-spiceai.md b/spiceaidocs/content/en/getting-started/install-spiceai.md deleted file mode 100644 index d66ef068..00000000 --- a/spiceaidocs/content/en/getting-started/install-spiceai.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -type: docs -title: "Install Spice.ai" -linkTitle: "Install Spice.ai" -weight: 5 ---- - -{{% alert title="Current Limitations" color="primary" %}} - -- Docker is required. -- Only macOS and Linux are natively supported. [WSL 2](https://docs.microsoft.com/en-us/windows/wsl/install-win10) is required for Windows. -- arm64 is not yet supported (i.e. Apple's M1 Macs). We use M1s ourselves, so we hope to support this very soon :-) - {{% /alert %}} - -โญ๏ธ We recommend using [GitHub Codespaces](https://github.com/features/codespaces) to get started. Codespaces enables you to run Spice.ai in a virtual environment in the cloud. If you use Codespaces, the install is not required and you may skip to the [Getting Started with Codespaces](#getting-started-with-codespaces) section. - -### Docker installation - -To continue with Docker installation on your local machine, please follow [these instructions](https://docs.docker.com/get-docker/). - -### Spice.ai CLI Installation (local machine) - -Install the Spice CLI by running the following `curl` command in your terminal. - -```bash -curl https://install.spiceai.org | /bin/bash -``` - -You may need to restart your terminal for the `spice` command to be added to your PATH. - -### Getting Started with Codespaces - -Create a new GitHub Codespace in the `spiceai/quickstarts` repo at [github.com/spiceai/quickstarts/codespaces](https://github.com/spiceai/quickstarts/codespaces). - - - -Once you open the Codespace, Spice.ai and everything you need to get started will already be installed. - -{{< button text="Create your first Spice.ai pod and train it >>" page="train-pod" >}} diff --git a/spiceaidocs/content/en/getting-started/next-steps.md b/spiceaidocs/content/en/getting-started/next-steps.md deleted file mode 100644 index 002e5936..00000000 --- a/spiceaidocs/content/en/getting-started/next-steps.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -type: docs -title: "Next steps" -linkTitle: "Next steps" -weight: 20 ---- - -Congratulations! In just a few minutes you downloaded and installed the Spice.ai CLI and runtime, created your first Spice.ai pod, trained it, and got a recommendation from it. - -This is just the start of the journey with Spice.ai. Next, try one of the quickstart tutorials or more in-depth samples for creating intelligent applications with Spice.ai. - -**Try:** - -- [ServerOps sample](https://github.com/spiceai/samples/tree/trunk/serverops) - a more in-depth version of the quickstart you just completed, using live CPU metrics from your own machine -- [Gardener sample](https://github.com/spiceai/samples/tree/trunk/gardener/README.md) - Intelligently water a simulated garden -- [Trader quickstart](https://github.com/spiceai/quickstarts/tree/trunk/trader) - a basic sample Bitcoin trading bot - -**Have questions?** - -If you need help, feel free to get in touch with the team through [Discord](https://discord.gg/kZnTfneP5u). diff --git a/spiceaidocs/content/en/getting-started/train-pod.md b/spiceaidocs/content/en/getting-started/train-pod.md deleted file mode 100644 index 068339a3..00000000 --- a/spiceaidocs/content/en/getting-started/train-pod.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -type: docs -title: "Create your first Spice.ai pod and train it" -linkTitle: "Train a Spice.ai pod" -weight: 10 ---- - -A [Spice.ai Pod]({{}}#pod) is simply a collection of configuration and data that is used to train and deploy your own AI. - -We will add intelligence to a sample application, **ServerOps**, by creating and training a Spice.ai pod that offers recommendations to the application for different server operations, such as performing server maintenance. - -If you are using GitHub Codespaces, skip Step 1. and continue with Step 2., as the repository will already be cloned. - -Step 1. Clone the Spice.ai quickstarts repository: - -```bash -cd $HOME -git clone https://github.com/spiceai/quickstarts -cd quickstarts/serverops -``` - -Step 2. Start the Spice runtime with `spice run`: - -```bash -cd $HOME/quickstarts/serverops -spice run -``` - -Step. 3. In a new terminal, add the ServerOps quickstart pod: - -So that we can leave Spice.ai running, add the quickstart pod in a new terminal tab or window. If you are running in GitHub Codespaces, you can open a new terminal by clicking the split-terminal button in VS Code. - -```bash -spice add quickstarts/serverops -``` - -The Spice.ai CLI will download the ServerOps quickstart pod and add the pod manifest to your project at `spicepods/serverops.yaml`. - -The Spice runtime will then automatically detect the pod and start your first training run! - -> Note, automatic training relies on your system's filewatcher. In some cases, this might be disabled or not work as expected. If training does not start, follow the command to [retrain the pod](#retrain-the-pod) below. - -### Observe the pod training - -Navigate to [http://localhost:8000](http://localhost:8000) in your favorite browser. You will see an overview of your pods. From here, you can click on the `serverops` pod to see a chart of the pod's training progress. - -### Retrain the pod - -In addition to automatic training upon manifest changes, training can be started by using the Spice CLI from within your app directory. - -```bash -spice train serverops -``` - -### Get a recommendation - -After training the pod, you can now get a recommendation for an action from it! - -```bash -curl http://localhost:8000/api/v0.1/pods/serverops/recommendation -``` - -### Run the server ops application - -To see how Spice.ai integrates with an app you write, start the associated sample app in this repo and look at the source code to see how it works. - -``` -npm install -node serverops.js -``` - -{{< button text="Next steps >>" page="next-steps" >}} diff --git a/spiceaidocs/content/en/quickstarts/_index.md b/spiceaidocs/content/en/quickstarts/_index.md deleted file mode 100644 index 2c7c8b12..00000000 --- a/spiceaidocs/content/en/quickstarts/_index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -type: docs -title: "Quickstarts" -linkTitle: "Quickstarts" -weight: 21 -description: "Quickstart tutorials to get started with Spice.ai quickly ๐Ÿš€" -no_list: true ---- - -## Spice.ai Quickstart Tutorials - -These simple tutorials use static data to help you get started with Spice.ai quickly. For examples of Spicepods that use streaming data, see [Samples]({{}}). - -- [ServerOps](https://github.com/spiceai/quickstarts/tree/trunk/serverops/README.md) - A CPU metrics based server operations app -- [Trader](https://github.com/spiceai/quickstarts/tree/trunk/trader/README.md) - A basic Bitcoin trading bot -- [Tweet Recommendation](https://github.com/spiceai/quickstarts/tree/trunk/tweet-recommendation/README.md) - A Twitter action recommendation app diff --git a/spiceaidocs/content/en/reference/Spicepod/_index.md b/spiceaidocs/content/en/reference/Spicepod/_index.md new file mode 100644 index 00000000..22591002 --- /dev/null +++ b/spiceaidocs/content/en/reference/Spicepod/_index.md @@ -0,0 +1,96 @@ +--- +type: docs +title: 'Manifest syntax for Spicepods' +linkTitle: 'Spicepod specification' +weight: 60 +description: 'Detailed documentation on the Spicepod manifest syntax (spicepod.yaml)' +--- + +## About YAML syntax for Spicepod manifests (spicepod.yaml) + +Spicepod manifests use YAML syntax and must be named `spicepod.yaml` or `spicepod.yml`. If you're new to YAML and want to learn more, see "[Learn YAML in Y minutes](https://learnxinyminutes.com/docs/yaml/)." + +Spicepod manifest files are stored in the root directory of your application code. + +## `version` + +The version of the Spicepod manifest. The current version is `v1beta1`. + +## `kind` + +The kind of Spicepod manifest. The kind is `Spicepod`. + +## `name` + +The name of the Spicepod. + +## `metadata` + +An optional `map` of metadata. + +**Example** + +```yaml +metadata: + epoch_time: 1605312000 + period: 72h + interval: 1m + granularity: 10s + episodes: 10 +``` + +## `datasets` + +A Spicepod can contain one or more [datasets]({{}}) referenced by relative path. + +**Example** + +A datasets referenced by relative path. + +```yaml +datasets: + - from: datasets/uniswap_v2_eth_usdc +``` + +A datasets with a dependency on another dataset. + +```yaml +datasets: + - from: datasets/uniswap_v2_eth_usdc + dependsOn: datasets/uniswap_eth_usdc +``` + +A dataset defined inline. + +```yaml +datasets: + - name: spiceai.uniswap_v2_eth_usdc + type: overwrite + source: spice.ai + acceleration: + enabled: true + refresh: 1h +``` + +## `models` + +A Spicepod can contain one or more [models](https://docs.spice.ai/reference/specifications/models-yaml-specification) referenced by relative path. + +**Example** + +A model referenced by path. + +```yaml +models: + - from: models/gas_fees +``` + +## `dependencies` + +A list of dependent Spicepods. + +```yaml +dependencies: + - lukekim/demo + - spicehq/nfts +``` diff --git a/spiceaidocs/content/en/reference/Spicepod/datasets.md b/spiceaidocs/content/en/reference/Spicepod/datasets.md new file mode 100644 index 00000000..8a7b7cd3 --- /dev/null +++ b/spiceaidocs/content/en/reference/Spicepod/datasets.md @@ -0,0 +1,125 @@ +--- +type: docs +title: "Datasets" +linkTitle: "Datasets" +description: 'Datasets YAML reference' +weight: 80 +--- + +A Spicepod can contain one or more datasets referenced by relative path, or defined inline. + +# `datasets` + +Inline example: + +`spicepod.yaml` +```yaml +datasets: + - from: spice.ai/eth/beacon/eigenlayer + name: strategy_manager_deposits + params: + app: goerli-app + acceleration: + enabled: true + mode: inmemory # / file + engine: arrow # / duckdb + refresh_interval: 1h + refresh_mode: full / append # update / incremental + retention: 30m +``` + +`spicepod.yaml` +```yaml +datasets: + - from: databricks.com/spiceai/datasets + name: uniswap_eth_usd + params: + environment: prod + acceleration: + enabled: true + mode: inmemory # / file + engine: arrow # / duckdb + refresh_interval: 1h + refresh_mode: full / append # update / incremental + retention: 30m +``` + +`spicepod.yaml` +```yaml +datasets: + - from: local/Users/phillip/data/test.parquet + name: test + acceleration: + enabled: true + mode: inmemory # / file + engine: arrow # / duckdb + refresh_interval: 1h + refresh_mode: full / append # update / incremental + retention: 30m +``` + +Relative path example: + +`spicepod.yaml` +```yaml +datasets: + - from: datasets/uniswap_v2_eth_usdc +``` + +`datasets/uniswap_v2_eth_usdc/dataset.yaml` +```yaml +name: spiceai.uniswap_v2_eth_usdc +type: overwrite +source: spice.ai +auth: spice.ai +acceleration: + enabled: true + refresh: 1h +``` + +## `name` + +The name of the dataset. This is used to reference the dataset in the pod manifest, as well as in external data sources. + +## `type` + +The type of dataset. The following types are supported: + +- `overwrite` - Overwrites the dataset with the contents of the dataset source. +- `append` - Appends new data from dataset source to the dataset. + +## `source` + +The source of the dataset. The following sources are supported: + +- `spice.ai` +- `dremio` (coming soon) +- `databricks` (coming soon) + +## `auth` + +Optional. The authentication profile to use to connect to the dataset source. Use `spice login` to create a new authentication profile. + +If not specified, the default profile for the data source is used. + +## `acceleration` + +Optional. Accelerate queries to the dataset by caching data locally. + +## `acceleration.enabled` + +Optional. Enable or disable acceleration. + +## `acceleration.refresh` + +Optional. The interval to refresh the data for the dataset if the dataset type is overwrite. + +For `append` datasets, the refresh interval not used. + +i.e. `1h` for 1 hour, `1m` for 1 minute, `1s` for 1 second, etc. + +## `acceleration.retention` + +Optional. Only supported for `append` datasets. Specifies how long to retain data updates from the data source before they are deleted. + +If not specified, the default retention is to keep all data. diff --git a/spiceaidocs/content/en/reference/duration.md b/spiceaidocs/content/en/reference/duration.md deleted file mode 100644 index ddb95217..00000000 --- a/spiceaidocs/content/en/reference/duration.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -type: docs -title: "Duration literals" -linkTitle: "Duration literals" -weight: 80 ---- - -A _duration literal_ is a representation of a length of time. It has an integer part and a duration unit part. Multiple durations may be specified together and the resulting duration is the sum of each smaller part. When several durations are specified together, larger units must appear before smaller ones, and there can be no repeated units. - -```js -duration_lit = { int_lit duration_unit } . -duration_unit = "h" | "m" | "s" | "ms" | "us" | "ยตs" | "ns" . -``` - -| Units | Meaning | -| -------- | --------------------------------------- | -| h | hour (60 minutes) | -| m | minute (60 seconds) | -| s | second | -| ms | milliseconds (1 thousandth of a second) | -| us or ยตs | microseconds (1 millionth of a second) | -| ns | nanoseconds (1 billionth of a second) | - -Durations represent a length of time. -Lengths of time are dependent on specific instants in time they occur and as such, -durations do not represent a fixed amount of time. -Hours (h) is the largest duration unit as it is the larged unit not affected by daylight savings adjustments. Larger units such as days, months, or years in the future. - -##### Examples of duration literals - -```js -1s -1h15m // 1 hour and 15 minutes -72h // 72h hrs = 3 days -``` diff --git a/spiceaidocs/content/en/reference/pod/_index.md b/spiceaidocs/content/en/reference/pod/_index.md deleted file mode 100644 index 0b0123e6..00000000 --- a/spiceaidocs/content/en/reference/pod/_index.md +++ /dev/null @@ -1,853 +0,0 @@ ---- -type: docs -title: "Manifest syntax for Spice.ai Pods" -linkTitle: "Pod specification" -weight: 60 -description: "Detailed documentation on the Spice.ai Pod manifest syntax" ---- - -## About YAML syntax for pod manifests - -Pod manifests use YAML syntax, and must end in a `.yaml` file extension. If you're new to YAML and want to learn more, see "[Learn YAML in Y minutes](https://learnxinyminutes.com/docs/yaml/)." - -You must store pod manifest files in the `spicepods` directory of your application code. It is not required for the `spicepods` directory to be located at the root of your code repository. - -## `name` - -The name of your pod. Spice.ai uses the name of your pod when rendering the dashboard and as the key for the API requests. If you omit `name`, Spice.ai sets it to the name of the YAML file excluding the `.yaml` extension. - -## `params` - -An optional `map` of parameters that you can specify to tune how Spice.ai interacts with your pod. The following parameters are available: - -| Parameter | Default | -| ------------------------------------------- | ---------------- | -| [epoch_time]({{}}) | Now - `period` | -| [period]({{}}) | 72 hours (72h) | -| [interval]({{}}) | 1 minute (1m) | -| [granularity]({{}}) | 10 seconds (10s) | -| [episodes]({{}}) | 10 | - -**Example** - -```yaml -params: - epoch_time: 1605312000 - period: 72h - interval: 1m - granularity: 10s - episodes: 10 -``` - -### `params.epoch_time` - -An epoch defines the beginning, or start, of the data stream. If Spice.ai receives data from before the epoch time, it is not used during training. - -If `epoch` is omitted, it defaults to `now` - [`period`]({{}}). - -`epoch_time` is an integer [timestamp]({{}}). - -**Example** - -```yaml -params: - epoch_time: 1605312000 -``` - -### `params.period` - -A period is the total span of time that is considered for a pod. The end of the data stream that Spice.ai will look at is the `epoch` + `period`. - -If `period` is omitted, it defaults to 72 hours (`72h`). - -`period` is a [duration literal]({{}}). - -**Example** - -```yaml -params: - period: 72h -``` - -### `params.interval` - -The interval is the time span that Spice.ai uses as a single input to the neural networks that power Spice.ai. Attempting to get a recommendation without Spice.ai having at least one intervals worth of data will result in an error. - -If `interval` is omitted, it defaults to 1 minute (`1m`). - -`interval` is a [duration literal]({{}}). - -**Example** - -```yaml -params: - interval: 1m -``` - -### `params.granularity` - -The granularity is the smallest unit of time that specifies how many timesteps there are in an interval. The `granularity` cannot be larger than the `interval`. When streaming data in a continuous manner, the Spice.ai runtime can give a new recommendation for action after each new granularity's worth of data is collected. - -If `granularity` is omitted, it defaults to 10 seconds (`10s`). - -`granularity` is a [duration literal]({{}}). The smallest granularity Spice.ai supports is 1 second (`1s`). - -**Example** - -```yaml -params: - granularity: 10s -``` - -### `params.episodes` - -An episode is a sequence of simulated actions the Spice.ai pod will take over the dataset during training. After an episode has completed in a training run, the neural networks powering Spice.ai will update giving it a chance to learn from its experience. The more episodes specified, the more chances the Spice.ai pod will be able to learn how to maximize its rewards, at the expense of a longer training run. More episodes is not always better, as there is a risk the Spice.ai pod will "[overfit](https://en.wikipedia.org/wiki/Overfitting)" to the data available in the training run. - -If `episodes` is omitted, it defaults to 10. - -`episodes` is a positive integer. - -**Example** - -```yaml -params: - episodes: 10 -``` - -## `time` - -Pod time, time-series and time-data related configuration is defined in the `time` section. - -### `time.categories` - -A list of time categories, such as `month` or `weekday` enabling the automatic creation of fields from the observation `time`. For example, by specifiying `month` the Spice.ai engine automatically creates a field in the data called `time_month_` with a value calculated from the month of which that timestamp relates. This enables learning from cyclical patterns, such as monthly or daily cycles. - -**_Example_** - -```yaml -time: - categories: - - month - - dayofweek -``` - -Supported category values are: - -`month` -`dayofmonth` -`dayofweek` -`hour` - -## `dataspaces` - -A pod must contain at least one [dataspace]({{}}). - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd - measurements: - - name: close - data: - connector: - name: file - params: - path: data/btcusd.csv - processor: - name: csv - - from: local - name: portfolio - measurements: - - name: usd_balance - initializer: 0 - - name: btc_balance - initializer: 0 - actions: - small_buy: | - usd_balance -= args.price - btc_balance += 1 - large_buy: | - usd_balance -= args.price - btc_balance += 10 - sell: | - usd_balance += args.price - btc_balance -= 1 - laws: - - usd_balance >= 0 - - btc_balance >= 0 -``` - -### `dataspaces[*].from` - -**Required**. A label used to indicate where the data is from. - -**Example** - -```yaml -dataspaces: - - from: coinbase -``` - -### `dataspaces[*].name` - -**Required**. The name to use for this datasource. - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd -``` - -### `dataspaces[*].identifiers` - -Defines the dataspace identifiers. - -An identifier is a string that correlates a unique set of data. Examples are transaction ids, order ids, or correlation ids. - -Identifiers may be ingested, visualized, and fetched through observation APIs, however are not yet made available to the AI engine for learning. If you have feedback on how you'd like to incorporate them, please let us know. - -### `dataspaces[*].identifiers[*].name` - -**Required**. The name of the identifier. - -**Example** - -```yaml -identifiers: - - name: transaction_id -``` - -### `dataspaces[*].identifiers[*].selector` - -Defines the field selector that maps a data field to the identifier name. Defaults to the identifier name if not provided. - -**Example** - -In the source data: - -```csv -time,my_balance,my_transaction_id -100,10,1A3 -200,20,1A4 -``` - -Selects the `my_transaction_id` data field mapped to the `transaction_id` identifier. - -```yaml -identifiers: - - name: transaction_id - selector: my_transaction_id -``` - -### `dataspaces[*].measurements` - -Defines the dataspace measurements. - -### `dataspaces[*].measurements[*].name` - -**Required**. The name of the field to create. - -**Example** - -```yaml -measurements: - - name: balance -``` - -### `dataspaces[*].measurements[*].initializer` - -May be used to specify an initial value for the field. - -`initializer` is a `float`. - -**Example** - -```yaml -measurements: - - name: balance - initializer: 10.0 -``` - -### `dataspaces[*].measurements[*].selector` - -Defines the field selector that maps a data field to the measurement name. Defaults to the measurement name if not provided. - -**Example** - -In the source data: - -```csv -time,my_balance -100,10 -200,20 -``` - -This would "select" the `my_balance` column and place it into `balance` to be used by Spice.ai - -```yaml -measurements: - - name: balance - selector: my_balance -``` - -### `dataspaces[*].measurements[*].fill` - -Used to specify how to treat missing data. Possible values are `previous` or `none`. The default value is `previous`. - -`previous` will take the last data point and "fill" it in. `none` will fill in the data with 0. - -**Example** - -In the source data: - -```csv -time,balance -100,10 -125, -150,15 -175, -200,20 -``` - -The following manifest: - -```yaml -measurements: - - name: balance - fill: previous -``` - -would produce this data to the AI Engine: - -```csv -time,balance -100,10 -125,10 -150,15 -175,15 -200,20 -``` - -### `dataspaces[*].categories` - -Process categorical data. Categorical data is a group or collection of discrete strings. - -Some examples of categorical data include: colors, star ratings, brands, programming languages, age group, hair color, grades, etc. - -Define categorical collections in the Spicepod manifest by the `categories` node. Specify each category with a `name` and a list of discrete `values.` - -**Example** - -```yaml -dataspaces: - - from: rainbow - name: attributes - categories: - - name: color - values: - - red - - orange - - yellow - - green - - blue - - indigo - - violet -``` - -### `dataspaces[*].categories[*].name` - -Both the category name and the dataspace observation field name. - -### `dataspaces[*].categories[*].selector` - -Selects the source data field mapped to the data space field. Defaults to `name` if not provided. - -**Example** - -In the source data: - -```csv -time,color_rainbow -100,red -200,blue -``` - -The data field `color_rainbow` is selected as the mapped source data for the data space observation field `color.` - -```yaml -categories: - - name: color - selector: color_rainbow -``` - -### `dataspaces[*].categories[*].values` - -Specifies the list of discrete category `name` values. - -Unspecified values in source data are ignored and are not included in the dataspace observations. - -### `dataspaces[*].tags` - -Specifies the list of tag selectors and values. - -The list of selectors is optional. - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd - tags: - values: - - buy - - sell -``` - -### `dataspaces[*].tags.selectors` - -Specifies the list of fields that should populate tags. The `_tags` field is always included by default. - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd - tags: - selectors: - - is_last - values: - - buy - - sell -``` - -### `dataspaces[*].tags.values` - -The list of possible tag values. Each item is a string value. Unspecified tags in source data are ignored and are not included in the dataspace observations. - -Tag values are aggregated to a unique tag value list at the pod scope. - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd - tags: - values: - - buy - - sell -``` - -### `dataspaces[*].tags.selectors` - -Specifies the list of source data fields to include in the tags collection. The `_tags` field is always included by default. - -**Example** - -```yaml -dataspaces: - - from: coinbase - name: btcusd - tags: - selectors: - - is_last - values: - - buy - - sell -``` - -### `dataspaces[*].tags.values` - -The list of possible tag values. Tag values are aggregated to a unique tag value list at the pod scope. - -### `dataspaces[*].data` - -Defines the data `connector` and data `processor` for the dataspace. - -If this section is omitted, the data should be provided through the [observations API]({{}}). - -```yaml -data: - connector: - name: file - params: - path: data.csv -``` - -### `dataspaces[*].data.connector` - -The connector used to fetch data from an external data source. The connector code should exist in the [data-components-contrib](https://github.com/spiceai/data-components-contrib/tree/trunk/dataconnectors) repository. - -### `dataspaces[*].data.connector.name` - -The name of the connector to use. - -The following connectors are currently supported: - -| Connector Name | -| ------------------------------------------------------------------------------------------------------------- | -| [file](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/file/file.go) | -| [flight](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/flight/README.md) | -| [http](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/http/README.md) | -| [influxdb](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/influxdb/influxdb.go) | -| [coinbase](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/coinbase/README.md) | -| [twitter](https://github.com/spiceai/data-components-contrib/blob/trunk/dataconnectors/twitter/twitter.go) | - -### `dataspaces[*].data.connector.params` - -A `map` of key-value pairs that are used to control the behavior of the connector. - -**Example** -The `file` connector uses the `path` param to control which file to load. - -```yaml -data: - connector: - name: file - params: - path: data.csv -``` - -### `dataspaces[*].data.processor` - -Once the data has been fetched with the connector, it needs to be processed into a format that Spice.ai can understand. The processor specified here will take the raw data from the connector and transform it into the observations that the Spice.ai runtime expects. - -**Example** -The `csv` processor will process the data coming from the `file` connector. - -```yaml -data: - connector: - name: file - params: - path: data.csv - processor: - name: csv -``` - -### `dataspaces[*].data.processor.name` - -The name of the processor to use. - -The following processors are currently supported: - -| Processor Name | -| -------------------------------------------------------------------------------------------------------- | -| [arrow](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/arrow/README.md) | -| [csv](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/csv/csv.go) | -| [flux-csv](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/flux/fluxcsv.go) | -| [json](https://github.com/spiceai/data-components-contrib/blob/trunk/dataprocessors/json/README.md) | - -### `dataspaces[*].data.processor.params` - -A `map` of key-value pairs that are used to control the behavior of the processor. - -Where `time` is not native to the data-stream, specific data processors, including the JSON and CSV data processors, support selecting a custom field to populate time with the `time_selector` parameter. - -**Time selector example** - -```yaml -data: - processor: - name: json - params: - time_selector: created_at -``` - -### `dataspaces[*].seed_data` - -Defines the seed data `connector` and `processor` for the dataspace. - -Seed data is loaded before standard `data` and uses the same syntax as the `dataspaces[*].data` section. - -This section is optional. - -```yaml -seed_data: - connector: - name: file - params: - path: data.csv -``` - -### `dataspaces[*].actions` - -A `map` of dataspace actions. The `key` is the name of the action to perform, the `value` is a python code block that will be executed whenever this action is taken during a training run. - -This can be used to simulate effects of actions taken during a training run on the observation space. Arguments can be passed into this dataspace action and can be referenced within the python code by prefixing the argument with `args.` - -**Example** - -```yaml -dataspaces: - - from: local - name: portfolio - measurements: - - name: usd_balance - - name: btc_balance - actions: - buy: | - usd_balance -= args.price - btc_balance += 1 -``` - -### `dataspaces[*].laws` - -A list of dataspace laws. Each item is a python expression that is evaluated during a training run to ensure that certain conditions aren't violated. If the Spice.ai runtime attempts to take an action that would violate a law, any dataspace actions that would have affected the observation space are not applied and a negative reward is applied to the timestep. - -**Example** - -In this example, if the `usd_balance` would go below 0, the dataspace action that would affect the `usd_balance` is not applied to the observation space. - -```yaml -dataspaces: - - from: local - name: portfolio - measurements: - - name: usd_balance - - name: btc_balance - actions: - buy: | - usd_balance -= args.price - btc_balance += 1 - laws: - - usd_balance >= 0 - - btc_balance >= 0 -``` - -## `actions` - -**Required**. The set of actions that the Spice.ai runtime can choose from when giving recommendations. - -**Example** - -```yaml -actions: - - name: jump - - name: move_right - - name: move_left -``` - -### `actions[*].name` - -The name of the action that can be taken. The action name should not include any spaces. - -### `actions[*].do` - -An optional section that specifies which datasource action should be invoked whenever this action is selected during a training run. - -**Example** - -```yaml -actions: - - name: buy - do: - name: local.portfolio.buy - args: - price: coinbase.btcusd.close -``` - -### `actions[*].do.name` - -The fully-qualified name of the dataspace action to invoke. A fully qualified name takes the form of: - -`dataspace.from`.`dataspace.name`.`dataspace.actions[*].name` - -**Example** - -A dataspace defined as: - -```yaml -dataspaces: - - from: local - name: portfolio - measurements: - - name: btc_balance - actions: - buy: | - btc_balance += 1 -``` - -would have a fully-qualified action name of `local.portfolio.buy` and would be referenced as: - -```yaml -actions: - - name: buy - do: - name: local.portfolio.buy -``` - -### `actions[*].do.args` - -A `map` of arguments to pass to the dataspace action. The `key` can be referenced by name in the defining dataspace action definition prefixed by `args.`. The `value` can be a constant or a fully qualified dataspace field. - -A fully qualified dataspace field takes the form of: - -`dataspace.from`.`dataspace.name`.`dataspace.field[*].name` - -**Example** - -A dataspace with the following definition: - -```yaml -dataspaces: - - from: game - name: world - measurements: - - name: player_position -``` - -could be referenced in the `args` as `game.world.player_position`: - -```yaml -actions: - - name: pick_up_coin - do: - name: game.character.pick_up_coin - args: - position: game.world.player_position -``` - -and could be referenced in the dataspace action with `args.position`: - -```yaml -dataspaces: - - from: game - name: character - measurements: - - name: coins - actions: - pick_up_coin: | - if args.position > 10: - game.character.coins += 1 -``` - -## `training` - -**Required**. Controls the training process for Spice.ai. - -**Example** - -```yaml -training: - rewards: - - reward: buy - with: reward = 1 - - reward: sell - with: reward = 1 - - reward: hold - with: reward = 1 -``` - -### `training.goal` - -End the training early if Spice.ai reaches a training goal three times in a row. - -After a single episode is completed from a training run, a `score` is kept of the cumulative rewards that the Spice.ai runtime received. Use the `goal` here to write a python expression to check if the training goal has been met. - -**Example** - -```yaml -training: - goal: score >= 100 -``` - -### `training.loggers` - -A list of training loggers to enable for each pod training run. - -Supported loggers and their values are: - -| Logger | Value | -| ------------------------------------------------------ | ------------- | -| [TensorBoard](https://www.tensorflow.org/tensorboard/) | `tensorboard` | - -**_Example_** - -```yaml -training: - loggers: - - tensorboard -``` - -### `training.reward_init` - -A python code block that will be run before an action specific reward code block runs. Use this to define common variables that will be useful to reference in the specific reward code blocks. - -**Example** - -```yaml -training: - reward_init: | - # Compute price change between previous state and this one - # so it can be used in all three reward functions - prev_price = current_state["coinbase_btcusd_close"] - new_price = next_state["coinbase_btcusd_close"] - change_in_price = new_price - prev_price - rewards: - - reward: buy - with: reward = -change_in_price - - reward: sell - with: reward = change_in_price - - - reward: hold - with: | - if change_in_price > 0: - reward = -0.1 - else: - reward = 0.1 -``` - -### `training.reward_funcs` - -The path to a Python file that defines the reward functions to use, instead of python code blocks. - -### `training.rewards` - -**Required**. Defines how to reward the Spice.ai runtime during training so that it learns to take more intelligent actions. - -This can be a list of reward definitions or the string "uniform" to indicate that all rewards should receive the same reward. - -**Example** - -```yaml -training: - rewards: uniform -``` - -```yaml -training: - rewards: - - reward: buy - with: reward = 1 - - reward: sell - with: reward = 1 -``` - -### `training.rewards[*].reward` - -The name of the action to associate this reward function with. Should be the same name as an action defined in [actions](#actions) - -```yaml -actions: - - name: jump - -training: - rewards: - - reward: jump - with: reward = 1 -``` - -### `training.rewards[*].with` - -If `training.reward_funcs` is defined, then this should be the name of the function defined in the python file to use for specifying which reward to give the Spice.ai agent for taking this action. - -If `training.reward_funcs` is not defined, then this is a python code block that needs to assign a variable to `reward` to specify which reward to give the Spice.ai agent for taking this action. - -See [Rewards]({{}}) for more information on how to define reward functions. diff --git a/spiceaidocs/content/en/reference/pod/quickstarts-trader.md b/spiceaidocs/content/en/reference/pod/quickstarts-trader.md deleted file mode 100644 index 738bcf2f..00000000 --- a/spiceaidocs/content/en/reference/pod/quickstarts-trader.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -type: docs -title: "Trader" -linkTitle: "Example - Trader" -weight: 70 ---- - -From: https://github.com/spiceai/quickstarts/tree/trunk/trader - -```yaml -name: trader -params: - epoch_time: 1605312000 - granularity: 30m - interval: 6h - period: 72h - episodes: 10 -dataspaces: - - from: coinbase - name: btcusd - measurements: - - name: close - data: - connector: - name: file - params: - path: spicepods/data/btcusd.csv - processor: - name: csv - - from: local - name: portfolio - measurements: - - name: usd_balance - initializer: 0 # update with the starting balance to train with - - name: btc_balance - initializer: 0 # update with the starting balance to train with - actions: - small_buy: | - usd_balance -= args.price - btc_balance += 1 - large_buy: | - usd_balance -= args.price - btc_balance += 10 - sell: | - usd_balance += args.price - btc_balance -= 1 - laws: - - usd_balance >= 0 - - btc_balance >= 0 - -actions: - - name: small_buy - do: - name: local.portfolio.small_buy - args: - price: coinbase.btcusd.close - - - name: large_buy - do: - name: local.portfolio.large_buy - args: - price: coinbase.btcusd.close - - - name: sell - do: - name: local.portfolio.sell - args: - price: coinbase.btcusd.close - - - name: hold - -training: - # Compute price change between previous state and this one - # so it can be used in all three reward functions - reward_init: | - prev_price = current_state["coinbase_btcusd_close"] - new_price = next_state["coinbase_btcusd_close"] - change_in_price = new_price - prev_price - - rewards: - - reward: small_buy - # Reward buying when the price decreases - # Penalize buying when the price increases - with: | - reward = -change_in_price - - - reward: large_buy - # Reward buying when the price decreases - # Penalize buying when the price increases - with: | - reward = -10 * change_in_price - - - reward: sell - # Reward selling when the price increases - # Penalize selling when the price decreases - with: | - reward = change_in_price - - - reward: hold - # Penalize holding slightly to incentivize more frequent trading - # Holding during large price movements will be penalized more harshly - with: | - if change_in_price > 0: - reward = -0.1 - else: - reward = 0.1 -``` diff --git a/spiceaidocs/content/en/reference/pod/samples-gardener.md b/spiceaidocs/content/en/reference/pod/samples-gardener.md deleted file mode 100644 index 3e8576d9..00000000 --- a/spiceaidocs/content/en/reference/pod/samples-gardener.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -type: docs -title: "Gardener" -linkTitle: "Example - Gardener" -weight: 60 ---- - -From: https://github.com/spiceai/samples/blob/trunk/gardener/README.md - -```yaml -name: gardener -params: - epoch_time: 1612557000 - granularity: 10m - interval: 1h - period: 720h -dataspaces: - - from: sensors - name: garden - measurements: - - name: temperature - - name: moisture - data: - connector: - name: file - params: - path: data/garden_data.csv - processor: - name: csv - -actions: - - name: close_valve - - name: open_valve_half - - name: open_valve_full - -training: - rewards: - - reward: close_valve - # Reward keeping moisture content above 25% - with: | - if next_state["sensors_garden_moisture"] > 0.25: - reward = 200 - - # Penalize low moisture content depending on how far the garden has dried out - else: - reward = -100 * (0.25 - next_state["sensors_garden_moisture"]) - - # Penalize especially heavily if the drying trend is continuing (next_state is drier than current_state) - if next_state["sensors_garden_moisture"] < current_state["sensors_garden_moisture"]: - reward = reward * 2 - - - reward: open_valve_half - # Reward watering when needed, more heavily if the garden is more dried out - with: | - if next_state["sensors_garden_moisture"] < 0.25: - reward = 100 * (0.25 - next_state["sensors_garden_moisture"]) - - # Penalize wasting water - # Penalize overwatering depending on how overwatered the garden is - else: - reward = -50 * (next_state["sensors_garden_moisture"] - 0.25) - - - reward: open_valve_full - # Reward watering when needed, more heavily if the garden is more dried out - with: | - if next_state["sensors_garden_moisture"] < 0.25: - reward = 200 * (0.25 - next_state["sensors_garden_moisture"]) - - # Penalize wasting water more heavily with valve fully open - # Penalize overwatering depending on how overwatered the garden is - else: - reward = -100 * (next_state["sensors_garden_moisture"] - 0.25) -``` diff --git a/spiceaidocs/content/en/reference/pod/samples-serverops.md b/spiceaidocs/content/en/reference/pod/samples-serverops.md deleted file mode 100644 index 2aefcb33..00000000 --- a/spiceaidocs/content/en/reference/pod/samples-serverops.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -type: docs -title: "Server Ops" -linkTitle: "Example - Server Ops" -weight: 80 ---- - -From: https://github.com/spiceai/samples/tree/trunk/serverops - -```yaml -name: serverops -params: - period: 24h - interval: 10m - granularity: 30s -dataspaces: - - from: hostmetrics - name: cpu - data: - connector: - name: influxdb - params: - url: SPICE_INFLUXDB_URL - token: SPICE_INFLUXDB_TOKEN - org: SPICE_INFLUXDB_ORG - bucket: SPICE_INFLUXDB_BUCKET - measurement: cpu - field: usage_idle - processor: - name: flux-csv - measurements: - # "usage_idle" measures the percentage of time the CPU is idle - # Higher values indicate less CPU usage - - name: usage_idle - -actions: - - name: perform_maintenance - - name: preload_cache - - name: do_nothing - -training: - reward_init: | - high_cpu_usage_threshold = 10 - - cpu_usage_new = 100 - next_state["hostmetrics_cpu_usage_idle"] - cpu_usage_prev = 100 - current_state["hostmetrics_cpu_usage_idle"] - cpu_usage_delta = cpu_usage_new - cpu_usage_prev - - cpu_usage_delta_abs = cpu_usage_delta - if cpu_usage_delta_abs < 0: - cpu_usage_delta_abs *= -1 - - rewards: - - reward: perform_maintenance - # Reward when cpu usage is low and stable - with: | - if cpu_usage_new < high_cpu_usage_threshold: - # The lower the cpu usage, the higher the reward - reward = high_cpu_usage_threshold - cpu_usage_new - - # Add an additional reward if the cpu usage trend is stable - if cpu_usage_delta_abs < 2: - reward *= 1.5 - - else: - # Penalize performing maintenance at a time when cpu usage is high - # The higher the cpu usage, the more harsh the penalty should be - reward = high_cpu_usage_threshold - cpu_usage_new - - - reward: preload_cache - # Reward when cpu usage is low and rising - # Is the cpu usage high now, and was the cpu usage low previously? - # If so, previous state was a better time to preload, - # so give a negative reward based on the change - with: | - if cpu_usage_new > high_cpu_usage_threshold and cpu_usage_delta > 25: - reward = -cpu_usage_delta - - # Reward preloading during low cpu usage - else: - reward = high_cpu_usage_threshold - cpu_usage_new - - - reward: do_nothing - # Reward doing nothing under high cpu usage - # The higher the cpu usage, the higher the reward - with: | - if cpu_usage_new > high_cpu_usage_threshold: - reward = high_cpu_usage_threshold - cpu_usage_new - - # Penalize doing nothing slightly when cpu usage is low - else: - reward = -1 - - # If the cpu usage trend is unstable, do not apply the penalty - if cpu_usage_delta_abs > 5: - reward = 0 -``` diff --git a/spiceaidocs/content/en/samples/_index.md b/spiceaidocs/content/en/samples/_index.md deleted file mode 100644 index 77c3fc3b..00000000 --- a/spiceaidocs/content/en/samples/_index.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -type: docs -title: "Samples" -linkTitle: "Samples" -weight: 22 -description: "Learn about Spice.ai with in-depth samples" -no_list: true ---- - -## Learn about Spice.ai with in-depth samples - -These tutorials are more in-depth than the [Quickstarts]({{}}) and use live streaming data for learning. - -### Apps that learn and adapt - -- [ServerOps](https://github.com/spiceai/samples/tree/trunk/serverops/README.md) - Run server maintainance during periods of low load. -- [Gardener](https://github.com/spiceai/samples/tree/trunk/gardener/README.md) - Intelligently water a simulated garden. -- [Trader](https://github.com/spiceai/samples/tree/trunk/trader/README.md) - Bitcoin trading from Coinbase Pro exchange data. - -### Deploy Spice.ai - -- [Kubernetes](https://github.com/spiceai/samples/tree/trunk/kubernetes/README.md) - Use Spice.ai in your Kubernetes cluster. diff --git a/spiceaidocs/content/en/training/_index.md b/spiceaidocs/content/en/training/_index.md deleted file mode 100644 index e53ca105..00000000 --- a/spiceaidocs/content/en/training/_index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -type: docs -title: "Spice.ai Training Docs" -linkTitle: "Training" -weight: 30 -description: "Training documentation." ---- diff --git a/spiceaidocs/content/en/training/monitoring.md b/spiceaidocs/content/en/training/monitoring.md deleted file mode 100644 index 2bc4c1cf..00000000 --- a/spiceaidocs/content/en/training/monitoring.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -type: docs -title: "Monitoring Training" -linkTitle: "Monitoring Training" -weight: 31 ---- - -Training runs may be monitored for progress, performance, and debugging in several ways. - -The main mediums of monitoring are: - -- Command Line -- Dashboard Monitoring -- Training Loggers - -### Command Line - -Training run progress is logged to the command line by default. - -**_Example output from the Trader Quickstart:_** - -```bash -2021/12/23 05:33:19 trader -> Starting training... -2021/12/23 05:33:19 trader -> Training 10 episodes... -2021/12/23 05:33:20 trader -> Episode 1 completed with score of -560.8. -2021/12/23 05:33:20 trader -> Action Counts: hold = 20, large_buy = 27, sell = 57, small_buy = 28. -2021/12/23 05:33:20 trader -> Episode 2 completed with score of -619.8. -2021/12/23 05:33:20 trader -> Action Counts: hold = 8, large_buy = 6, sell = 102, small_buy = 16. -2021/12/23 05:33:21 trader -> Episode 3 completed with score of -80.8. -2021/12/23 05:33:21 trader -> Action Counts: hold = 116, large_buy = 8, sell = 6, small_buy = 2. -2021/12/23 05:33:21 trader -> Episode 4 completed with score of -40.6. -2021/12/23 05:33:21 trader -> Action Counts: hold = 124, large_buy = 2, sell = 2, small_buy = 4. -2021/12/23 05:33:22 trader -> Episode 5 completed with score of -26.1. -2021/12/23 05:33:22 trader -> Action Counts: hold = 127, large_buy = 2, sell = 1, small_buy = 2. -2021/12/23 05:33:22 trader -> Episode 6 completed with score of -15.9. -2021/12/23 05:33:22 trader -> Action Counts: hold = 129, large_buy = 1, sell = 1, small_buy = 1. -2021/12/23 05:33:23 trader -> Episode 7 completed with score of -1.0. -2021/12/23 05:33:23 trader -> Action Counts: hold = 132, large_buy = 0, sell = 0, small_buy = 0. -2021/12/23 05:33:23 trader -> Episode 8 completed with score of -1.0. -2021/12/23 05:33:23 trader -> Action Counts: hold = 132, large_buy = 0, sell = 0, small_buy = 0. -2021/12/23 05:33:24 trader -> Episode 9 completed with score of -10.8. -2021/12/23 05:33:24 trader -> Action Counts: hold = 130, large_buy = 2, sell = 0, small_buy = 0. -2021/12/23 05:33:24 trader -> Episode 10 completed with score of -6.1. -2021/12/23 05:33:24 trader -> Action Counts: hold = 131, large_buy = 0, sell = 1, small_buy = 0. -2021/12/23 05:33:24 trader -> Max training episodes (10) reached! -``` - -### Dashboard Monitoring - -Training run progress can also be visualized in the dashboard [http://localhost:8000](http://localhost:8000) after navigating to the pod view. - -dashboard-training-run - -### Training Loggers - -Spice.ai supports logging to monitoring tools like [TensorBoard](https://www.tensorflow.org/tensorboard/). - -This logging can either be enabled at the pod level using the `training.loggers` Spicepod section or as a parameter to the `spice train` command. Once enabled, the runtime will log training metrics for that tool. - -A button to open the tool will appear on the training run in the dashboard. Clicking the button will open the relevant monitoring tool. - -**_Example for TensorBoard:_** - -