Files
deck_in_a_dash/watch/package.json
T
ml 1a654da3e9
build / build (push) Successful in 30s
Introduces watch/, a real Pebble watchapp (built via pebble build) that
shows the daily tarot/astrology reading on-device: persistence, reading
computation, and UI screens, driven by the existing engine/interpreter
code linked in unchanged where possible.

Required engine-side changes to make that linking work:
- A compact low-precision ephemeris (lowprec_ephemeris.c) replacing the
  vendored ~127KB Astronomy Engine, which doesn't fit the watch's ~64KB
  app budget.
- Hand-rolled sqrt/atan2/sin/cos replacements for that ephemeris and
  astro.c's Ascendant calculation - Pebble's statically-linked libm
  hard-faults on real hardware under this app's -fPIE link for all four.
- narrative.c/guidance.c refactored from FILE*/fprintf onto snprintf-
  based buffers, since Pebble's SDK blocks fprintf at compile time.
2026-07-14 17:10:22 +02:00

66 lines
2.7 KiB
JSON

{
"name": "deck_in_a_dash_watch",
"author": "Matthias Ladkau",
"version": "1.0.0",
"keywords": ["pebble-app"],
"private": true,
"dependencies": {},
"pebble": {
"displayName": "Deck in a Dash",
"uuid": "7f47ed93-f44e-4c1a-9998-7edcfa61218e",
"sdkVersion": "3",
"enableMultiJS": true,
"targetPlatforms": [
"basalt",
"chalk",
"diorite",
"emery",
"flint",
"gabbro"
],
"watchapp": {
"watchface": false
},
"messageKeys": [
"BIRTH_YEAR",
"BIRTH_MONTH",
"BIRTH_DAY",
"BIRTH_HOUR",
"BIRTH_MINUTE",
"BIRTH_UTC_OFFSET_MINUTES",
"BIRTH_LAT_MICRODEG",
"BIRTH_LON_MICRODEG",
"LANG",
"NOTIFY_ENABLED",
"NOTIFY_HOUR",
"NOTIFY_MINUTE"
],
"resources": {
"media": [
{ "type": "bitmap", "name": "IMG_CARD_FOOL", "file": "img/fool.png" },
{ "type": "bitmap", "name": "IMG_CARD_MAGICIAN", "file": "img/magician.png" },
{ "type": "bitmap", "name": "IMG_CARD_HIGH_PRIESTESS", "file": "img/high_priestess.png" },
{ "type": "bitmap", "name": "IMG_CARD_EMPRESS", "file": "img/empress.png" },
{ "type": "bitmap", "name": "IMG_CARD_EMPEROR", "file": "img/emperor.png" },
{ "type": "bitmap", "name": "IMG_CARD_HIEROPHANT", "file": "img/hierophant.png" },
{ "type": "bitmap", "name": "IMG_CARD_LOVERS", "file": "img/lovers.png" },
{ "type": "bitmap", "name": "IMG_CARD_CHARIOT", "file": "img/chariot.png" },
{ "type": "bitmap", "name": "IMG_CARD_STRENGTH", "file": "img/strength.png" },
{ "type": "bitmap", "name": "IMG_CARD_HERMIT", "file": "img/hermit.png" },
{ "type": "bitmap", "name": "IMG_CARD_WHEEL_OF_FORTUNE", "file": "img/wheel_of_fortune.png" },
{ "type": "bitmap", "name": "IMG_CARD_JUSTICE", "file": "img/justice.png" },
{ "type": "bitmap", "name": "IMG_CARD_HANGED_MAN", "file": "img/hanged_man.png" },
{ "type": "bitmap", "name": "IMG_CARD_DEATH", "file": "img/death.png" },
{ "type": "bitmap", "name": "IMG_CARD_TEMPERANCE", "file": "img/temperance.png" },
{ "type": "bitmap", "name": "IMG_CARD_DEVIL", "file": "img/devil.png" },
{ "type": "bitmap", "name": "IMG_CARD_TOWER", "file": "img/tower.png" },
{ "type": "bitmap", "name": "IMG_CARD_STAR", "file": "img/star.png" },
{ "type": "bitmap", "name": "IMG_CARD_MOON", "file": "img/moon.png" },
{ "type": "bitmap", "name": "IMG_CARD_SUN", "file": "img/sun.png" },
{ "type": "bitmap", "name": "IMG_CARD_JUDGEMENT", "file": "img/judgement.png" },
{ "type": "bitmap", "name": "IMG_CARD_WORLD", "file": "img/world.png" }
]
}
}
}