TensorFlow.js is a library for machine learning in JavaScript

Develop ML models in JavaScript, and use ML directly in the browser or in Node.js.

See tutorials

Tutorials show you how to use TensorFlow.js with complete, end-to-end examples.

See models

Pre-trained, out-of-the-box models for common use cases.

See demos

Live demos and examples run in your browser using TensorFlow.js.

How it works

Run existing models

Use off-the-shelf JavaScript models or convert Python TensorFlow models to run in the browser or under Node.js.

Retrain existing models

Retrain pre-existing ML models using your own data.

Develop ML with JavaScript

Build and train models directly in JavaScript using flexible and intuitive APIs.

Demos

Performance RNN

Enjoy a real-time piano performance by a neural network.

Webcam Controller

Play Pac-Man using images trained in your browser.

LipSync by YouTube

Lip sync to the popular hit "Dance Monkey" live in the browser with Facemesh.

News & announcements

Check out our blog for additional updates, and subscribe to our monthly TensorFlow newsletter to get the latest announcements sent directly to your inbox.

July 14, 2020 
Using ML in the browser to lip sync to your favorite songs

LipSync was created as a playful way to demonstrate machine learning in the browser with TensorFlow.js and the Facemesh model. We partnered with Australian singer Tones and I to let you lip sync to Dance Monkey in this demonstration.

May 30, 2020 
TensorFlow.js Community Show & Tell #2

See what people have been creating with some epic demos that can give you superpowers in the browser and beyond! Use the #MadeWithTFJS hashtag if you would like to be featured at future events.

Continue
May 27, 2020 
TensorFlow.js 2.0 is here!

This release includes several improvements, optimizations, and models. Check out the release notes for breaking changes and how to upgrade.

May 18, 2020 
How Hugging Face achieved a 2x performance boost for Question Answering with DistilBERT in Node.js

Hugging Face, an AI startup, addresses the production challenges of NLP through use of low-resource models and non-Python frameworks.