Skip to content
Standard library for JavaScript and Node.js.
Branch: develop
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Convert text to comment May 10, 2018
bin Add command Feb 8, 2019
deps Update electron Mar 6, 2019
dist Update distributable files Feb 22, 2019
docs Add reference May 14, 2019
etc Update electron Mar 6, 2019
examples Add license headers Jan 13, 2018
lib Update code style and apply fixes May 16, 2019
test Add bundle test Dec 4, 2018
tools Update list of Node versions Apr 24, 2019
workshops Remove workshop Nov 23, 2017
.codeclimate.yml Update copyright Jan 12, 2018
.codecov.yml Update copyright Jan 12, 2018
.editorconfig Add settings for TypeScript files Jan 15, 2019
.eslintrc.js Add top-level eslint config to support overrides for benchmarks, test… Aug 5, 2018
.gitattributes Update copyright Jan 12, 2018
.gitignore Exclude TypeScript configuration files Jan 17, 2019
.mailmap Update contributors Feb 13, 2019
.npmignore Exclude TypeScript configuration files Jan 17, 2019
.npmrc Update copyright Jan 12, 2018
.rtlintrc Rename repl.txt lint rule Sep 19, 2018
.travis.yml Update list of Node versions Apr 24, 2019
CHANGELOG.md Add changelog file Oct 22, 2018
CODE_OF_CONDUCT.md Insert HTML equations Aug 24, 2017
CONTRIBUTING.md Add license header Oct 22, 2018
CONTRIBUTORS Update contributors Feb 13, 2019
FAQ.md Fix broken link to built-in-math-bugs.md (#205) Aug 7, 2018
LICENSE Add attribution Jan 16, 2019
Makefile Rename environment variables, update recipes, and add declaration fil… Jan 15, 2019
NOTICE Update copyright year Jan 2, 2019
PRIVACY.md Reorder sections Sep 7, 2017
README.md Update copy Jan 5, 2019
ROADMAP.md Lowercase word Dec 29, 2017
TODO.md Document method Sep 19, 2018
appveyor.yml Update list of Node versions Apr 24, 2019
azure-pipelines.yml Fix command Jan 22, 2019
circle.yml Switch to Node 10 Apr 27, 2018
package.json Update dev dep Apr 27, 2019
tsconfig.json Enable checking JavaScript files and fix config values Jan 19, 2019

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 or as shared ("vendored") libraries in server 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-2019. 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


Acknowledgments

Build Infrastructure

Test and build infrastructure is generously provided by the following services:

Continuous Integration Service Logos
You can’t perform that action at this time.