{
  "schema": 1,
  "product": "miblo",
  "version": "1.45.0",
  "date": "2026-10-27",
  "notes": "# Miblo 1.45.0\n\n## Desk apps como páginas web\n\n- A Desk app can now be a web page: HTML, CSS and JavaScript, with images, fonts and video. Miblo Hub draws the page on the computer and streams what changed to the Miblo Desk over your network, sealed end to end. The page can switch quality while it runs (`miblo.quality()`): five presets from Very low (30 fps) to Ultra (about 10 fps), and `auto`, which adapts to your Wi-Fi.\n- Desk apps made the earlier way (cards, frames, animations, live charts) keep working, now drawn by Miblo Hub too: nothing more is written to the Miblo Desk's memory, which no longer wears it.\n- Alerts still come first: they interrupt the page, and it comes back at its next turn. The limits strip, the status frame and the meeting badge stay on top, as before.\n- Needs firmware 1.45.0 on the Miblo Desk; Miblo Hub says which Miblo Desks need the update.\n\n## Para quem cria Desk apps\n\n- `miblo apps new <name> --page` starts a page Desk app; the simulator shows the page live. The SDK gains `screen.page()`, `screen.data()` and `screen.quality()`; the earlier screen methods are deprecated, not removed. The guide (docs/page-desk-apps-guide.md) lists what a page can and cannot do. The Desk App Store takes page Desk apps (API 4).\n- A page reaches only the hosts its manifest lists, over https; WebSocket, WebRTC, popups and background workers are blocked.\n\n## Correções\n\n- Miblo Hub no longer shows sessions as working after they finished (an idle compaction marked a finished session as running).\n- The Miblo Desk frees memory before it ever needs to restart, and waits for a quiet moment if it must.\n- A Miblo Desk whose screen broke can be reinstalled: power it on three times quickly, then reinstall the official firmware from Miblo Hub (`miblo update`), no on-screen code needed.\n- The screen stream's status could fail to reach Miblo Hub on busy screens; it always goes now.",
  "assets": [
    {
      "name": "miblo-desk-1.45.0.bin",
      "kind": "firmware",
      "board": "miblo-desk",
      "path": "firmware/1.45.0/miblo-desk-1.45.0.bin",
      "size": 1002816,
      "sha256": "aebf7731a6d706454f72037006583560419741d8d805cc1c570f07baca81217a"
    },
    {
      "name": "miblo-geekmagic_ultra-1.45.0.bin",
      "kind": "firmware",
      "board": "geekmagic_ultra",
      "alias": true,
      "path": "firmware/1.45.0/miblo-geekmagic_ultra-1.45.0.bin",
      "size": 1002816,
      "sha256": "aebf7731a6d706454f72037006583560419741d8d805cc1c570f07baca81217a"
    },
    {
      "name": "miblo-miblo-desk-1.45.0.bin",
      "kind": "firmware",
      "board": "miblo-desk",
      "alias": true,
      "path": "firmware/1.45.0/miblo-desk-1.45.0.bin",
      "size": 1002816,
      "sha256": "aebf7731a6d706454f72037006583560419741d8d805cc1c570f07baca81217a"
    },
    {
      "name": "miblo-desk-loader-1.45.0.bin",
      "kind": "loader",
      "board": "miblo-desk",
      "path": "firmware/1.45.0/miblo-desk-loader-1.45.0.bin",
      "size": 314224,
      "sha256": "cd28bad28daff5ee1a923b8659e6fef08dbd9801d1d9ae276ff225c6372a59ab"
    },
    {
      "name": "miblo-loader-geekmagic_ultra-1.45.0.bin",
      "kind": "loader",
      "board": "geekmagic_ultra",
      "alias": true,
      "path": "firmware/1.45.0/miblo-loader-geekmagic_ultra-1.45.0.bin",
      "size": 314224,
      "sha256": "cd28bad28daff5ee1a923b8659e6fef08dbd9801d1d9ae276ff225c6372a59ab"
    },
    {
      "name": "miblo-loader-miblo-desk-1.45.0.bin",
      "kind": "loader",
      "board": "miblo-desk",
      "alias": true,
      "path": "firmware/1.45.0/miblo-desk-loader-1.45.0.bin",
      "size": 314224,
      "sha256": "cd28bad28daff5ee1a923b8659e6fef08dbd9801d1d9ae276ff225c6372a59ab"
    },
    {
      "name": "miblo-plugin-1.45.0.zip",
      "kind": "plugin",
      "path": "plugin/miblo-plugin-1.45.0.zip",
      "size": 2639222,
      "sha256": "8fb4945c441dd56fdf821a9ec934bd3a6e0a73cf41785117b9dc5c7e5fa70555"
    },
    {
      "name": "Install-Miblo-macOS.zip",
      "kind": "installer",
      "path": "installers/1.45.0/Install-Miblo-macOS.zip",
      "size": 20268,
      "sha256": "75d1499f1c18361cb30ce59e20a9dfd46b9a28268357f5a412e1caf60cc862a9"
    },
    {
      "name": "install.ps1",
      "kind": "installer",
      "path": "installers/1.45.0/install.ps1",
      "size": 69292,
      "sha256": "c4dc0042acf6a180572a6862304445943a9e4d0198e3c467b22b43a99a3c05eb"
    },
    {
      "name": "install.sh",
      "kind": "installer",
      "path": "installers/1.45.0/install.sh",
      "size": 64575,
      "sha256": "4ceaad3b9e1e87dc7210310c3184e40f602b303fe026b8ba20c2f05c775d75da"
    }
  ]
}
