← all repositories
vladmandic/face-api

A face-recognition Swiss Army knife that runs in your browser tab

This fork revives and modernizes the abandoned `face-api.js` so you can detect, describe, and compare faces without shipping data to a cloud API.

1.1k stars HTML Computer Vision
face-api
Not currently ranked — collecting fresh signals.
star history

What it does

FaceAPI bundles pretrained TensorFlow/JS models for face detection, landmark tracking, face recognition, and demographic prediction (age, gender, emotion) into a single library. It works both in the browser and in Node.js, and ships with multiple build flavors: IIFE, ESM, and CommonJS, with or without TensorFlow pre-bundled.

The interesting bit

The original face-api.js was left unmaintained; this fork keeps the models alive while adding Node.js multiprocessing demos, GPU-accelerated builds, and a WASM backend for platforms where native TensorFlow binaries won’t run. That’s a lot of packaging work for what is essentially a thin wrapper around existing TFJS models.

Key highlights

  • Pretrained weights included in the repo; no external model downloads at runtime
  • Browser builds with TFJS baked in, plus a nobundle variant if you want to pin your own TensorFlow version
  • Node.js support from v14 through v22, with explicit GPU and WASM backend paths
  • Live webcam and static-image demos hosted on GitHub Pages
  • Worker-pool example showing how to parallelize face detection across CPU cores

Caveats

  • Node.js v23+ is explicitly unsupported due to TensorFlow/JS incompatibilities
  • Using graphical functions in Node.js requires manually patching the environment with a canvas library
  • The README is thorough but reads like a configuration manual; actual model accuracy and performance numbers are absent

Verdict

Worth a look if you need client-side face analysis without API keys or network round-trips. Skip it if you need production-grade accuracy benchmarks or a managed, automatically updated model pipeline.

Frequently asked

What is vladmandic/face-api?
This fork revives and modernizes the abandoned `face-api.js` so you can detect, describe, and compare faces without shipping data to a cloud API.
Is face-api open source?
Yes — vladmandic/face-api is open source, released under the MIT license.
What language is face-api written in?
vladmandic/face-api is primarily written in HTML.
How popular is face-api?
vladmandic/face-api has 1.1k stars on GitHub.
Where can I find face-api?
vladmandic/face-api is on GitHub at https://github.com/vladmandic/face-api.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.