How Tenon Extends Hummer to Bridge Vue/React with Native: A Deep Dive

Tenon is a lightweight MVVM framework built on Didi's Hummer runtime that bridges the Web ecosystem (Vue 3 and React) with native Android and iOS, offering multi‑framework support, easy adoption, extensible plugins, high availability, and a three‑layer architecture illustrated by real‑world Didi case studies.

Didi Tech
Didi Tech
Didi Tech
How Tenon Extends Hummer to Bridge Vue/React with Native: A Deep Dive

Introduction

Tenon is an MVVM enhancement framework built on Didi's Hummer cross‑platform runtime. It bridges the Web ecosystem (Vue 3 and React) with native mobile, allowing a single codebase to run on Android and iOS.

Design Philosophy

Tenon customizes the Vue 3 render layer and React reconciler to match front‑end developers’ habits, providing APIs that feel native to Vue/React while leveraging Hummer’s lightweight JavaScript engine.

Technical Advantages

Multi‑framework support: Vue 3 and React out of the box, with plans for additional frameworks.

Easy to adopt: API design follows front‑end conventions, lowering the learning curve.

Extensible plugin system: quickly integrate native components.

High availability: proven in multiple Didi services with crash rate <0.01%.

Cross‑page state management, conditional compilation, and comprehensive style support.

Architecture

Tenon consists of three layers:

Driver layer – implements VDOM rendering and CSS compilation on the Hummer side.

Framework layer – hosts the customized Vue 3 and React implementations; future support for Angular, Svelte, etc.

Application layer – provides component libraries, state management, routing, and other ecosystem features.

Tenon architecture diagram
Tenon architecture diagram

Syntax Comparison

Tenon Vue adapts Vue 3’s syntax to render on Hummer; Tenon React does the same via a custom reconciler. A “Hello Tenon” example shows near‑identical component code between Tenon and the original frameworks, with only platform‑specific tags such as <view>, <text>, <image> differing.

Use Cases

Tenon is already deployed in Didi’s ride‑hailing, freight, and international driver applications, demonstrating stable performance and low crash rates.

FAQ

Q1: Difference between Tenon and Hummer?

Hummer offers a native‑style API for performance‑critical scenarios; Tenon adds a front‑end‑style API that aligns with Vue/React, targeting developers who prefer web conventions.

Q2: How does Tenon compare with Chameleon, Weex, React Native?

Tenon focuses on mobile native cross‑platform (Android/iOS) similar to Weex and React Native, while Chameleon also targets mini‑programs and web platforms.

Conclusion

Tenon is a young, rapidly evolving framework that invites community contributions via GitHub. Its goal is to become the default cross‑platform solution for Didi developers, reducing development cost and improving efficiency.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

cross-platformReActVuefrontend frameworkMVVMHummerTenon
Didi Tech
Written by

Didi Tech

Official Didi technology account

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.