5 trending open source machine learning JavaScript frameworks

5 trending open source machine learning JavaScript frameworks

Whether you're a JavaScript developer who wants to dive into machine learning or a machine learning expert who plans to use JavaScript, these open source frameworks may intrigue you.

Image by : 

Christian Holmér. Modified by Opensource.com. CC BY-SA 4.0


Get the newsletter

Join the 85,000 open source advocates who receive our giveaway alerts and article roundups.

The tremendous growth of the machine learning field has been driven by the availability of open source tools that allow developers to build applications easily. (For example, AndreyBu, who is from Germany and has more than five years of experience in machine learning, has been utilizing various open source frameworks to build captivating machine learning projects.)

Although the Python programming language powers most of the machine learning frameworks, JavaScript hasn’t been left behind. JavaScript developers have been using various frameworks for training and deploying machine learning models in the browser.

Here are the five trending open source machine learning frameworks in JavaScript.

1. TensorFlow.js

TensorFlow.js is an open source library that allows you to run machine learning programs completely in the browser. It is the successor of Deeplearn.js, which is no longer supported. TensorFlow.js improves on the functionalities of Deeplearn.js and empowers you to make the most of the browser for a deeper machine learning experience.

With the library, you can use versatile and intuitive APIs to define, train, and deploy models from scratch right in the browser. Furthermore, it automatically offers support for WebGL and Node.js.

If you have pre-existing trained models you want to import to the browser, TensorFlow.js will allow you do that. You can also retrain existing models without leaving the browser.

2. Machine learning tools

The machine learning tools library is a compilation of resourceful open source tools for supporting widespread machine learning functionalities in the browser. The tools provide support for several machine learning algorithms, including unsupervised learning, supervised learning, data processing, artificial neural networks (ANN), math, and regression.

If you are coming from a Python background and looking for something similar to Scikit-learn for JavaScript in-browser machine learning, this suite of tools could have you covered.

3. Keras.js

Keras.js is another trending open source framework that allows you to run machine learning models in the browser. It offers GPU mode support using WebGL. If you have models in Node.js, you’ll run them only in CPU mode. Keras.js also offers support for models trained using any backend framework, such as the Microsoft Cognitive Toolkit (CNTK).

Some of the Keras models that can be deployed on the client-side browser include Inception v3 (trained on ImageNet), 50-layer Residual Network (trained on ImageNet), and Convolutional variational auto-encoder (trained on MNIST).

4. Brain.js

Machine learning concepts are very math-heavy, which may discourage people from starting. The technicalities and jargons in this field may make beginners freak out. This is where Brain.js becomes important. It is an open source, JavaScript-powered framework that simplifies the process of defining, training, and running neural networks.

If you are a JavaScript developer who is completely new to machine learning, Brain.js could reduce your learning curve. It can be used with Node.js or in the client-side browser for training machine learning models. Some of the networks that Brain.js supports include feed-forward networks, Ellman networks, and Gated Recurrent Units networks.

5. STDLib

STDLib is an open source library for powering JavaScript and Node.js applications. If you are looking for a library that emphasizes in-browser support for scientific and numerical web-based machine learning applications, STDLib could suit your needs.

The library comes with comprehensive and advanced mathematical and statistical functions to assist you in building high-performing machine learning models. You can also use its expansive utilities for building applications and other libraries. Furthermore, if you want a framework for data visualization and exploratory data analysis, you’ll find STDLib worthwhile.


If you are a JavaScript developer who intends to delve into the exciting world of machine learning or a machine learning expert who intends to start using JavaScript, the above open source frameworks will intrigue you.

Do you know of another open source library that offers in-browser machine learning capabilities? Please let us know in the comment section below.

About the author

Michael Livecoding.tv
Dr. Michael J. Garbade - Dr. Michael is the founder and CEO of Los Angeles-based LiveEdu Inc. (previously Livecoding.tv). https://www.liveedu.tv is the world’s leading livestreaming platform that equips people with practical skills on creating complete products in future technological fields. It is a place where you can take your skills to the next levels by watching peers build real products from the fields of programming, game development, data analytics, design, augmented reality...