You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
stdlib (<ahref="https://en.wikipedia.org/wiki/Help:IPA/English">/ˈstændərd lɪb/</a> "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.
48
+
</p>
49
+
</section>
50
+
<section>
51
+
<h2>Features</h2>
52
+
53
+
<ul>
54
+
<li>150+ <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/assert/`}>special math functions</a></li>
55
+
<li>35+ <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/stats/base/dists/`}>probability distributions</a>, with support for evaluating probability density functions (PDFs), cumulative distribution functions (CDFs), quantiles, moments, and more.</li>
56
+
<li>40+ <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/random/base/`}>seedable pseudorandom number generators</a> (PRNGs).</li>
57
+
<li>200+ general <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/utils/`}>utilities</a> for data transformation, functional programming, and asynchronous control flow.</li>
58
+
<li>200+ <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/assert/`}>assertion utilities</a> for data validation and feature detection.</li>
59
+
<li>50+ <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/datasets/`}>sample datasets</a> for testing and development.</li>
60
+
<li>A <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/plot/ctor`}>plot API</a> for data visualization and exploratory data analysis.</li>
61
+
<li>Native add-ons for interfacing with BLAS libraries, with pure JavaScript fallbacks.</li>
<li>REPL environment with integrated help and examples.</li>
64
+
<li>Can be bundled using <ahref="http://browserify.org/">Browserify</a>, <ahref="https://webpack.js.org/">Webpack</a>, and other bundlers for use in web browsers.</li>
65
+
</ul>
66
+
67
+
<h2>Getting Help</h2>
68
+
69
+
<p>Ask questions and get help from the community on the project's <ahref="https://gitter.im/stdlib-js/stdlib">Gitter</a> channel.</p>
70
+
71
+
<h2>Prerequisites</h2>
72
+
73
+
<p>Running stdlib <b>requires</b> the following prerequisites</p>
<ahref="https://www.npmjs.com/">npm</a>: package manager (version <code>> 2.7.0</code>; if Node <code>< 1.0.0</code>, version <code>> 2.7.0</code> and <code>< 4.0.0</code>; if Node <code>< 6.0.0</code>, version <code>> 2.7.0</code> and <code>< 6.0.0</code>)
81
+
</li>
82
+
</ul>
83
+
84
+
<p>Most functionality in stdlib is implemented exclusively in JavaScript; however, some implementations try to capture performance benefits by using <ahref="https://nodejs.org/api/addons.html">native bindings</a> and/or <ahref="http://webassembly.org/">WebAssembly</a>. While **not** required to run stdlib, as <b>every</b> stdlib implementation has a JavaScript fallback, the following dependencies are <b>required</b> for building native add-ons, including linking to BLAS and LAPACK libraries:</p>
85
+
86
+
<ul>
87
+
<li>
88
+
<ahref="https://www.gnu.org/software/make/">GNU make</a> development utility and task runner
89
+
</li>
90
+
<li>
91
+
<ahref="https://www.gnu.org/software/bash/">GNU bash</a>: an sh-compatible shell
92
+
</li>
93
+
<li>
94
+
<ahref="http://gcc.gnu.org/">gcc & g++</a> or <ahref="http://clang.llvm.org/">Clang</a>: C/C++ compilation and linking (g++ version <code>>=4.8</code>; clang version <code>>=3.5</code>, Xcode version <code>>=8.3.1</code> on OS X)
95
+
</li>
96
+
<li>
97
+
<ahref="https://gcc.gnu.org/fortran/">gfortran</a>: Fortran compilation and linking (version <code>>=4.8</code>)
98
+
</li>
99
+
</ul>
100
+
101
+
<p>While <b>not</b> required to run stdlib, the following dependencies are <b>required</b> for automatically downloading external libraries:</p>
102
+
103
+
<ul>
104
+
<li><ahref="http://curl.haxx.se/">curl</a>, <ahref="http://www.gnu.org/software/wget">wget</a>, or <ahref="http://www.freebsd.org/cgi/man.cgi?fetch%281%29">fetch</a>(FreeBSD): utilities for downloading remote resources</li>
105
+
</ul>
106
+
107
+
<p>The following external libraries can be automatically downloaded and compiled from source using <code>make</code>:</p>
<li><ahref="https://electron.atom.io/">Electron</a>: framework for cross-platform desktop applications</li>
112
+
</ul>
113
+
114
+
<h2>Installation</h2>
115
+
116
+
<p>To install as a library or application dependency,</p>
117
+
118
+
<pre>
119
+
<codeclassName="hljs language-bash">
120
+
$ npm install @stdlib/stdlib
121
+
</code>
122
+
</pre>
123
+
124
+
<p>To install globally for use as a command-line utility,</p>
125
+
126
+
<pre>
127
+
<codeclassName="hljs language-bash">
128
+
$ npm install -g @stdlib/stdlib
129
+
</code>
130
+
</pre>
131
+
132
+
<p>which will expose the <code>stdlib</code> command. For example, to see available sub-commands</p>
133
+
134
+
<pre>
135
+
<codeclassName="hljs language-bash">
136
+
$ stdlib help
137
+
</code>
138
+
</pre>
139
+
140
+
<p>and to run the <ahref={`https://stdlib.io/${props.version}/docs/api/@stdlib/repl/`}>REPL</a></p>
141
+
142
+
<pre>
143
+
<codeclassName="hljs language-bash">
144
+
$ stdlib repl
145
+
</code>
146
+
</pre>
147
+
148
+
<p>For distributable bundles for use in browser environments or as shared ("vendored") libraries in server environments, see the <ahref={`https://github.com/stdlib-js/stdlib/tree/${props.version}/dist`}><code>dist</code></a> directory and associated <ahref={`https://github.com/stdlib-js/stdlib/tree/${props.version}/dist`}>guide</a>.</p>
149
+
150
+
<p>Otherwise, to install as a system library, follow the <ahref={`https://github.com/stdlib-js/stdlib/blob/${props.version}/docs/development.md#download`}>download</a>, <ahref={`https://github.com/stdlib-js/stdlib/blob/${props.version}/docs/development.md`}>configuration</a>, and <ahref={`https://github.com/stdlib-js/stdlib/blob/${props.version}/docs/development.md#installation`}>installation</a> instructions as described in the <ahref={`https://github.com/stdlib-js/stdlib/blob/${props.version}/docs/development.md`}>development guide</a>.</p>
0 commit comments