Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
M

moddable

> 编程语言
Open source

Tools for developers to create truly open IoT products using standard JavaScript on low cost microcontrollers.

1.5K stars0 likes0 views
WebsiteGitHub

About

Tools for developers to create truly open IoT products using standard JavaScript on low cost microcontrollers.

Moddable SDK

Copyright 2017-2026 Moddable Tech, Inc.
Revised: August 5, 2026 Moddable SDK: Version 9.0.0

Modern software development for microcontrollers

The Moddable SDK is a combination of development tools and runtime software to create applications for microcontrollers.

Microcontrollers are highly constrained devices compared to modern computers and mobile devices. A typical microcontroller used with the Moddable SDK has about 45 KB of free memory, 1 MB of Flash ROM, and runs at 80 MHz. The Moddable SDK uses many different techniques, both at build time and at run time, to work efficiently on these devices.

The primary programming language for development is JavaScript. The XS JavaScript engine at the center of the Moddable SDK implements the 2026 JavaScript language standard with better than 99% conformance.[1] The constraints of the target microcontroller may limit the number of language features that can be used in combination in a single project.

The JavaScript language implemented in the Moddable SDK is the same language used in web pages and Node.js. The microcontroller that the scripts run on, however, is very different from a personal computer, server, or mobile device. These differences often require a different approach to using JavaScript. The APIs and objects in the Moddable SDK are quite different, being designed with the goal of minimizing memory use. Bring your existing experience with JavaScript, but be prepared to think about performance, code size, and memory use in a different way.[2]

As much as practical, the Moddable SDK is implemented in JavaScript. Portions of the Moddable SDK are implemented in C for performance or direct access to native APIs.[3] There is no C++.

A significant part of building efficient software for microcontrollers occurs at build time. The Moddable SDK contains many tools and options for the build process.[4] Take time to learn about these to get the best results.

[1] See also: XS Conformance
[2] See also: XS Differences
[3] See also: XS in C
[4] See also: Tools, manifest

Major features

Networking

The Moddable SDK implements network sockets and a variety of standard, secure networking protocols built on sockets including HTTP/HTTPS, WebSockets, MQTT, mDNS, DNS, SNTP, and telnet.

There is also Bluetooth Low Energy (BLE) protocol support for both BLE peripheral and central device development.

Graphics

Two APIs for building modern user interfaces are available:

  • Commodetto, a bitmap graphics library that provides a 2D graphics API. Commodetto includes the lightweight Poco rendering engine, a display list renderer able to efficiently render a single scanline at a time, saving considerable memory by eliminating the need for a frame buffer.
  • Piu, a user interface framework built on top of Commodetto. Piu is an object-based framework that makes it easier to create complex, responsive layouts.

The Moddable SDK also includes command line tools for image format conversion, image compression, image rotation, font compression, localization, and more. The build system automatically makes use of these tools.

Hardware

The Moddable SDK implements a variety of hardware protocols including digital (GPIO), analog, PWM, and I2C. A number of drivers for common off-the-shelf sensors and corresponding example apps are also available.

Source level debuggers

The xsbug JavaScript source level debugger is a full-featured debugger that supports debugging modules and applications for XS platforms.

Similar to other debuggers, xsbug supports setting breakpoints, browsing source code, and inspection of the call stack and variables. The xsbug debugger additionally provides real-time instrumentation to track memory usage and profile application and resource consumption.

xsdb is a command line (CLI) debugger modeled on gdb. It is valuable for embedded developers already familiar with gdb, for building automated debugging flows, and for LLMs to debug their code.

See also: xsbug documentation See also: xsdb documentation

Getting Started

  1. To do anything with the Moddable SDK, you have to install it on your computer. This involves downloading this repository, installing some development tools, configuring settings over the command line, and building the Moddable SDK tools.

    The Getting Started Guide in the documentation directory walks you through the whole process of installing the Moddable SDK.

  2. With the Moddable SDK installed, you can build and run apps on hardware simulators.

  3. To develop for a particular device, you need to install additional tools and SDKs for that device. The setup process for each device is different, but usually involves installing some additional SDKs, drivers, and development tools.

The SDKs and tools for a particular device are not created or maintained by Moddable, but we do provide detailed instructions to help you install them and get started developing for them with the Moddable SDK. The section below provides links to the setup instructions/developer guides for some of the devices we support.

Hardware simulators

The Moddable SDK includes simulators that run on macOS, Linux, and Windows. These are a great way to get started, and are invaluable as development accelerators.

To use the simulator, you simply need to install the Moddable SDK.

A video demonstration and information about the simulator is available in the Simulator section of the tools documentation.

ESP8266 by Espressif

To use the Moddable SDK with ESP8266-based devices, you need to:

  1. Install the Moddable SDK
  2. Install ESP8266 tools

The Moddable SDK supports many devices built on ESP8266, including the devices shown below.


Moddable One[5]

Node MCU ESP8266[6]

Moddable Three[7]

[5] See also: Moddable One Developer Guide, Moddable product page
[6] See also: Using the Moddable SDK with ESP8266
[7] See also: Moddable Three Developer Guide

ESP32 by Espressif

To use the Moddable SDK with ESP32-based devices, you need to:

  1. Install the Moddable SDK
  2. Install ESP32 tools

The Moddable SDK supports many devices built on ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6 and ESP32-H2, including the devices shown below.


Moddable Six[8]

Node MCU ESP32[9]

M5Stack

M5Stack Fire

M5Stick C

M5Atom Matrix

[8] See also: Moddable Six Developer Guide, Moddable product page
[9] See also: Using the Moddable SDK with ESP32

Pico by Raspberry Pi

To use the Moddable SDK with Pico devices, you need to:

  1. Install the Moddable SDK
  2. Install Pico tools

The Moddable SDK supports many devices built with the Raspberry Pi Pico, including the boards shown below:


Raspberry Pi
Pico W

Pimoroni
Pico Display

ili9341

Adafruit QT Py

Sparkfun Pro Micro

LILYGO T-Display

nRF52 by Nordic Semiconductor

To use the Moddable SDK with nRF52 devices, you need to:

  1. Install the Moddable SDK
  2. Install nRF5 tools
  3. Install a bootloader. This is not necessary for the Moddable Four as the bootloader is pre-installed on Moddable Four.

The Moddable SDK supports many devices built with the nRF52, including the boards shown below:


Moddable Four[10]

Nordic DK pca10056

Sparkfun Pro nRF52840

Makerdiary nRF52840 MDK

seeed XIAO-nRF52840

Adafruit ItsyBitsy nRF52840

[10] See also: Moddable Four Developer Guide, Moddable product page

Gecko by Silicon Labs

To use the Moddable SDK with Gecko devices, you need to:

  1. Install the Moddable SDK
  2. Install Gecko tools

The following developer resources are also available:

  • Silicon Labs Gecko support in Moddable SDK blog post
  • Bluetooth Low Energy Support Now Available in Moddable SDK blog post

The Moddable SDK supports four Gecko boards, shown below.


Giant Gecko

Mighty Gecko

Thunderboard Sense 2

Blue Gecko

QCA4020 by Qualcomm

To use the Moddable SDK with the QCA4020, you need to:

  1. Install the [Moddable SDK](./documentation/Modda

Issues· 70 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言