Skip to content
@webarkit

WebAR Kit

WebAR Kit a new place for the development of the WebAR of tomorrow

Hi there 👋

Welcome to WebARKit !!

🖼️ WebARKit

A new place for the development of the WebAR of tomorrow.

Open-source WebAR tooling — from historical tracking in C/C++ to pure-Rust, WASM-first computer vision.

Website Twitter [email protected]


🙋 Who we are

We are a group of developers passionate about Web Augmented Reality. We believe open source makes a difference: we build libraries for marker-based and markerless (NFT) tracking directly in the browser, without plugins, using WebAssembly.

Our work covers the entire stack: from historical bindings based on ARToolKit to a new generation of pure-Rust libraries, designed to be lightweight, portable (including no_std), and performant on WASM.


🚀 Main Projects

New Generation (Rust / WASM)

Project Description
PureCV Computer vision library in pure Rust, without FFI dependencies, designed for the WASM target. On the roadmap: Feature detection (TEBLID, FREAK, StarDetector/CenSurE) and matching (BFMatcher, GMS filtering), with experimental no_std support under evaluation.
WebARKitLib-rs Rewrite of the WebAR tracking library in Rust, a direct successor to WebARKitLib/ARToolKit5, designed to compile efficiently to WASM.
jsfeatNext TypeScript version of jsfeat, with type definitions, used as a computer vision layer on the JS/TS side.
webarkit 🚧 Proposed. Organization's central repo: will host the shared CV contract (@webarkit/cv-backend-spec), making jsfeatNext and PureCV backends interchangeable for a future high-level AR project.

Historical Library (C/C++)

Project Description
WebARKitLib The C/C++ source code for WebARKit, based on ARToolKit5 and extended with new features (SIMD, logging, improved tracking).
webarkit-cv WebARKit compiled via Emscripten/OpenCV: the bridge between the C++ library and the browser.

Markerless / NFT tracking

Project Description
ARnft Lightweight JavaScript library for WebAR with markerless tracking (NFT), based on jsartoolkitNFT, with rendering via three.js.
jsartoolkitNFT A stripped-down version of jsartoolkit5, focused exclusively on NFT (Natural Feature Tracking) support.

🧭 Where we're going

The current focus is migrating to a pure-Rust, FFI-free stack, with particular attention to:

  • 📦 WASM binary size control
  • 🔧 no_std compatibility (embedded target, e.g., ESP32)
  • ⚡ SIMD performance on WASM
  • 🧩 API consistency across different repositories

On the C/C++ side, work hasn't stopped: recent tracking improvements (first-frame robustness, marker-centered origin option) and the OpenCV/Emscripten pipeline update are keeping the historical foundation solid as the Rust stack matures.

🚧 In discussion: A proposal for a monorepo hosting a shared CV contract (@webarkit/cv-backend-spec) is open in the webarkit repo, making jsfeatNext and PureCV interchangeable backends behind the same interface, ready to be consumed by a future high-level AR project. The status is still draft, open to discussion about the monorepo structure and package names.

🤝 Contribute

Pull requests are welcome! Check out the open issues in the individual repositories—many are labeled good first issue or help wanted. For general questions, you can email us at [email protected] or visit webarkit.org.

Pinned Loading

  1. ARnft ARnft Public

    A small javascript library for WebAR with NFT

    TypeScript 235 50

  2. jsartoolkitNFT jsartoolkitNFT Public

    jsartolkitNFT is a smaller version of jsartoolkit5 with only NFT support

    JavaScript 136 26

  3. purecv purecv Public

    A pure Rust computer vision library focusing on the core and imgproc modules of OpenCV.

    Rust 26 1

  4. WebARKitLib-rs WebARKitLib-rs Public

    Rust version of the WebARKitLib

    Rust 6 3

  5. WebARKitLib WebARKitLib Public

    The source code of WebARKit

    C++ 21 8

  6. webarkit webarkit Public

    The webarkit central repository with all WebAR packages.

    TypeScript 11 3

Repositories

Showing 10 of 34 repositories

Top languages

Loading…

Most used topics

Loading…