Skip to main content

FastLED Wasm Compiler

Project description

FastLED wasm compiler

Compiles an Arduino/Platformio sketch into a wasm binary that can be run directly in the web browser.

Linting MacOS_Tests Ubuntu_Tests Win_Tests

About

This python app will compile your FastLED style sketches into html/js/wasm output that runs directly in the browser.

Compile times are extremely fast - I've seen as low as 5 seconds but 8-15 seconds is typical.

This works on Windows/Linux/Mac(arm/x64).

Docker is required.

https://github.com/user-attachments/assets/bde26ddd-d24d-4a78-90b6-ac05359677fa

Demo

https://zackees.github.io/fastled-wasm/

Install

pip install fastled-wasm

Use

Change to the directory where the sketch lives and run

fastled-wasm --watch  # watches for changes in the ino/src file changes and re-compiles automatically.

The compiler should download, compile the target and then launch a web-browser.

About the compilation.

Pre-processing is done to your source files. A fake Arduino.h will be inserted into your source files that will provide shims for most of the common api points.

Revisions

1.0.6 - Removed --no-open and --watch, --watch is now assumed unless --just-compile is used. 1.0.5 - Implemented --update to update the compiler image from the docker registry. 1.0.4 - Implemented --watch which will watch for changes and then re-launch the compilation step. 1.0.3 - Integrated live-server to launch when available. 1.0.2 - Small bug with new installs. 1.0.1 - Re-use is no longer the default, due to problems. 1.0.0 - Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastled_wasm-1.0.6.tar.gz (122.7 kB view details)

Uploaded Source

Built Distribution

fastled_wasm-1.0.6-py2.py3-none-any.whl (11.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file fastled_wasm-1.0.6.tar.gz.

File metadata

  • Download URL: fastled_wasm-1.0.6.tar.gz
  • Upload date:
  • Size: 122.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.5

File hashes

Hashes for fastled_wasm-1.0.6.tar.gz
Algorithm Hash digest
SHA256 51c34b064eeb50507df9c1ed3aa55f21a336a87b80e4b50a78a75c87737d5dd0
MD5 e85794859fac0677e4f742aed3d3095d
BLAKE2b-256 e0fa8406a4cc8424038c84ac453773a994f6833cac1d6640d3515df82cd87c3d

See more details on using hashes here.

File details

Details for the file fastled_wasm-1.0.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for fastled_wasm-1.0.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 680d920494e9afbd668e821facd685a97ac3d83db48f9eebd29818f73f00f3d6
MD5 3bee47e8b04e1282c0cfd7aa1d433949
BLAKE2b-256 f3a965bdcc5124183bf3204b93425a8bbb1b59d1bd277722ad4a283261ad630b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page