Standard library for JavaScript and Node.js.
Clone or download
Latest commit e8c12ff Sep 20, 2018
Permalink
Failed to load latest commit information.
.github Convert text to comment May 10, 2018
bin Add command Jun 7, 2018
deps Update electron Aug 24, 2018
dist Update error message Aug 3, 2018
docs Add link to database Aug 22, 2018
etc Update lint rule names Sep 19, 2018
examples Add license headers Jan 13, 2018
lib Add related packages Sep 20, 2018
test Disable lint rule Jun 9, 2018
tools Update electron Aug 24, 2018
workshops Remove workshop Nov 23, 2017
.codeclimate.yml Update copyright Jan 12, 2018
.codecov.yml Update copyright Jan 12, 2018
.editorconfig Remove definition Jan 12, 2018
.eslintrc.js Add top-level eslint config to support overrides for benchmarks, test… Aug 5, 2018
.gitattributes Update copyright Jan 12, 2018
.gitignore Update copyright Jan 12, 2018
.mailmap Remove duplicate and update mailmap Jul 1, 2018
.npmignore Fix ignoring of `docs` folders in packages May 9, 2018
.npmrc Update copyright Jan 12, 2018
.rtlintrc Rename repl.txt lint rule Sep 19, 2018
.travis.yml Add Node 10 Apr 27, 2018
CODE_OF_CONDUCT.md Insert HTML equations Aug 24, 2017
CONTRIBUTING.md Insert HTML equations Aug 24, 2017
CONTRIBUTORS Update contributors Aug 7, 2018
FAQ.md Fix broken link to built-in-math-bugs.md (#205) Aug 7, 2018
LICENSE Add MT19937 license Aug 9, 2018
Makefile Define NODE_ENV env var if not explicitly defined Jan 20, 2018
NOTICE Update years Jan 13, 2018
PRIVACY.md Reorder sections Sep 7, 2017
README.md Add command-line utility installation instructions May 4, 2018
ROADMAP.md Lowercase word Dec 29, 2017
TODO.md Update error message Aug 3, 2018
appveyor.yml Restrict npm versions for older Node versions Apr 28, 2018
circle.yml Switch to Node 10 Apr 27, 2018
package.json Update dev deps Aug 10, 2018

README.md



stdlib logo




stdlib (/ˈstændərd lɪb/ "standard lib") is a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing applications. The library provides a collection of robust, high performance libraries for mathematics, statistics, data processing, streams, and more and includes many of the utilities you would expect from a standard library.

This is the GitHub repository of stdlib source code and documentation. For help developing stdlib, see the development guide.

Features

Resources

External Resources

Prerequisites

Running stdlib requires the following prerequisites:

  • Node.js: JavaScript runtime (version >= 0.10)
  • npm: package manager (version > 2.7.0; if Node < 1.0.0, version > 2.7.0 and < 4.0.0; if Node < 6.0.0, version > 2.7.0 and < 6.0.0)

Most functionality in stdlib is implemented exclusively in JavaScript; however, some implementations try to capture performance benefits by using native bindings and/or WebAssembly. While not required to run stdlib, as every stdlib implementation has a JavaScript fallback, the following dependencies are required for building native add-ons, including linking to BLAS and LAPACK libraries:

  • GNU make: development utility and task runner
  • GNU bash: an sh-compatible shell
  • gcc & g++ or Clang: C/C++ compilation and linking (g++ version >= 4.8; clang version >= 3.5, Xcode version >=8.3.1 on OS X)
  • gfortran: Fortran compilation and linking (version >= 4.8)

While not required to run stdlib, the following dependencies are required for automatically downloading external libraries:

  • curl, wget, or fetch (FreeBSD): utilities for downloading remote resources

The following external libraries can be automatically downloaded and compiled from source using make:

  • OpenBLAS: optimized BLAS library
  • Electron: framework for cross-platform desktop applications

Installation

To install as a library or application dependency,

$ npm install @stdlib/stdlib

To install globally for use as a command-line utility,

$ npm install -g @stdlib/stdlib

which will expose the stdlib command. For example, to see available sub-commands

$ stdlib help

For distributable bundles for use in browser environments, see the dist directory and associated guide.

Otherwise, to install as a system library, follow the download, configuration, and installation instructions as described in the development guide.


Contributing

See the contributing guidelines.

License

See LICENSE.

Copyright

Copyright © 2016-2018. The Stdlib Authors.


Status

stability-experimental

Version

git tag NPM version Node.js version

Build

OS Build (master) Coverage (master) Build (develop) Coverage (develop)
Linux/OS X Linux/OS X build status (master) coverage (master) Linux/OS X build status (develop) coverage (develop)
Windows Windows build status (master) coverage (master) Windows build status (develop) coverage (develop)

Dependencies

Dependencies DevDependencies

Community

Chat


Sponsors

Gold

stencila logo