BUI puts Blender’s UI in your app, Firenook speeds up Firebase emulators, and ASN blocks GrapheneOS

2 days ago

BUI turns Blender's interface into a UI library for Python, Rust, JavaScript, C and Dear ImGui, and starts GPUI code five times faster than GPUI does. Also from Friday's Hacker News front page: Firenook's drop-in Firebase emulators, Hightouch pairing Jev with Claude Opus to check customer profiles, and ASN Bank's Wero payments refusing GrapheneOS phones. BUI: Blender's UI and runtime, by ppmpreetham https://github.com/ppmpreetham/BUI Discussion: https://news.ycombinator.com/item?id=50389333 ppmpreetham on how BUI was cut out of Blender: https://news.ycombinator.com/item?id=50392392 pythonRon trying tkinter code on Fedora: https://news.ycombinator.com/item?id=50390305 xlii on the GPL: https://news.ycombinator.com/item?id=50391762 panzi on the GPL: https://news.ycombinator.com/item?id=50391341 Firenook: a faster drop-in for the Firebase emulators https://firenook.dev/ Discussion: https://news.ycombinator.com/item?id=50378643 A Jev that can ask Opus for help gives Opus accuracy at 4x lower cost, by Albert Jin, Neil Desai and Delaney Mackenzie at Hightouch https://hightouch.com/blog/llm-judges-identity-resolution Discussion: https://news.ycombinator.com/item?id=50397429 pcwelder on the calibration charts: https://news.ycombinator.com/item?id=50401734 Dutch bank ASN blocks non-Google Android, including GrapheneOS https://github.com/PrivSec-dev/banking-apps-compat-report/issues/105 Discussion: https://news.ycombinator.com/item?id=50390124 EPI's reply on Play Integrity and key attestation, posted by lucasvbeek: https://github.com/PrivSec-dev/banking-apps-compat-report/issues/105#issuecomment-6683845675 cristobalbaixas on what the attestation certificate carries: https://github.com/PrivSec-dev/banking-apps-compat-report/issues/105#issuecomment-6689036316 The front page that day: https://news.ycombinator.com/front?day=2026-11-06

Ask about this presentation

Chapters

  1. 0:00BUI puts Blender’s interface in your app
  2. 0:37The same GPUI code starts five times faster
  3. 1:06BUI is GPL, and screen readers can’t see it
  4. 1:42Firenook replaces the Firebase emulators
  5. 2:16Jev asks Opus only when it is unsure
  6. 3:03ASN Bank’s Wero payments refuse GrapheneOS
Show transcript
  1. On Friday's Hacker News front page, BUI took the interface of Blender, the 3D app, and made it a UI library. You can drive it from Python, Rust, JavaScript, C or Dear ImGui. ppmpreetham, who built BUI, wrote in the thread that an AI agent was asked to strip out every part of Blender that wasn't UI logic, instead of decoupling the UI. An existing tkinter program runs on BUI unchanged and comes out looking like Blender. pythonRon tried it on Fedora and had to adjust the tkinter code first, then liked the result.

    Slide text

    BUI puts Blender’s interface in your own app

    Python Rust React Svelte C C++ Dear ImGui
    Existing tkinter programs run on it unchanged
  2. BUI compiles code written for GPUI, the Rust toolkit behind the Zed editor, without changes. One small settings window, written once, puts its first frame on screen in about 40 milliseconds on BUI and about 230 on GPUI. Left open and idle, GPUI keeps about one percent of a core busy, and BUI uses none, because it redraws only what changed and sleeps the rest of the time. That idle figure is what an open app costs your laptop battery.

    Slide text

    The same GPUI code starts five times faster on BUI

    First frame on screen
    BUI 40 ms
    GPUI 231 ms
    CPU used per idle minute
    BUI 0 ms
    GPUI 743 ms
  3. The license decides whether you can use BUI at all. It is GPL, so any program that includes it is distributed under the GPL too. In the thread, xlii called that a show stopper for many people, and panzi put it plainly: you can only use it in GPL version 3 programs. BUI also draws its own widgets, so screen readers can't see them yet. There are no input methods for typing languages like Japanese, and on macOS it is experimental and always draws on the CPU.

    Slide text

    A program that includes BUI ships under the GPL

    Screen readers Can’t see its widgets yet
    Input methods None yet
    macOS Experimental, CPU drawing only
  4. Firenook is a drop-in replacement for the Firebase Local Emulator Suite, written in Rust, with no Java to install. You keep your firebase.json, your SDKs and your ports, and change the one word that starts the emulators in your script. Loaded with about two million documents, Firenook runs in around two gigabytes of memory, where the official suite needed about 22, and your data survives a restart. Firestore, Auth, Storage, Functions and Pub/Sub all answer on the ports they already use.

    Slide text

    Firenook replaces the Firebase emulators when you change one word

    "emulators": "firebase emulators:start --import ./data"
    "emulators": "firenook emulators:start --import ./data"
    About 2 GB of RAM for 2 million documents, against 22 GB
  5. Hightouch needed a model to spot customer profiles that merge two different people into one. Jev, a fast decision model, returns a confidence score. When Jev is between 30 and 90 percent sure, the profile goes to Claude Opus for a second opinion. About a fifth of profiles go up, and Jev and Opus together get almost as many right as Opus alone for under a quarter of the cost. On harder cases, twins and fathers and sons with the same name, Jev sends more profiles up on its own and still matches Opus for about half the cost. In the thread, pcwelder argued the charts don't show Jev is better calibrated than GPT-6 Luna, the other decision model Hightouch tried.

    Slide text

    Jev answers the easy cases and sends the unsure ones to Claude Opus

    Cost per 1,000 profiles checked, 98.8% right against 99.0%
    Jev, then Opus $0.88
    Opus alone $3.86
  6. In the Netherlands, the ASN Bank app runs Google's Play Integrity check before it lets you pay with iDEAL Wero, and GrapheneOS users are told their phone fails the bank's security requirements. EPI, the company behind Wero, wrote that Android's hardware key attestation can't prove the app and the operating system are intact. cristobalbaixas, a developer who runs both checks, answered that the attestation certificate carries the verified boot state, the operating system's boot key and the app's signing digest, all signed by the chip, and GrapheneOS publishes its boot keys for exactly this. If I were building payments on Android, I'd check that certificate myself and accept GrapheneOS's keys.

    Slide text

    ASN Bank’s Wero payments now refuse GrapheneOS phones

    Play Integrity
    Google decides, and returns a verdict with no reason
    Key attestation
    The chip signs the boot state, the OS key and the app’s signing digest

What happened in AI today, in your inbox

One short email each evening. Read it and you’re caught up.

Built with ❤️ in New York