Elm Pebble

Elm Pebble packages

Browse the generated package documentation for Pebble runtime bindings and companion bridge APIs. The structure mirrors Elm’s official package viewer, backed by docs.json and elm.json files generated from the source packages.

For regular Elm packages, use package.elm-lang.org. The dark-mode link points at the dark package viewer mirror.

Use regular Elm packages

Elm Pebble projects are still Elm projects. Watch and phone code can use ordinary Elm packages when those packages fit the target. Companion apps run through the normal Elm compiler, so packages such as elm/http are the right choice there.

Watch package limits

The watch compiler targets Pebble C, not a browser or network runtime. Packages that depend on browser-only or DOM/HTTP/file APIs cannot be used on the watch.

  • Avoid packages that depend on elm/browser, elm/html, elm/virtual-dom, elm/http, elm/file, or elm/bytes in watch code.
  • Use those packages in the companion phone app when the original Elm compiler supports them.
  • Use Elm Pebble packages for watch runtime features such as UI drawing, buttons, time, storage, vibration, and system state.