Warning
This repository is deprecated. Remote widgets have been superseded by WebAssembly widgets. See bmc-main instead.
Self-hosted widget server for remote widgets on your Deck.
- Docker and Docker Compose
- x86_64 Linux machine
docker compose up -ddocker compose exec api /usr/local/bin/push_templates \
--widgets-dir /widgets \
--db-host postgres \
--db-port 5432 \
--db-username deck_feeder \
--db-password deck_feeder \
--db-name deck_feeder \
--migrations-dir /app/migrations \
--device-prefs-file /sdk/v1/prefs.json5# list available widgets
curl http://localhost:8080/
# render a widget
curl -X POST http://localhost:8080/weather/invoke \
-H 'Content-Type: application/json' \
-d '{"widget_version":"latest","size":"medium","params":{"location":"Prague"}}'Point your Deck to your server's IP address on port 8080.
See DEVELOPMENT.md for technical details and widget development guide.
The widgets/weather/ directory contains an example weather widget you can use as a starting point.