[PR #356] [CLOSED] Replace yoga-layout with bun-yoga #1256

Closed
opened 2026-03-14 09:26:52 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/anomalyco/opentui/pull/356
Author: @remorses
Created: 11/28/2025
Status: Closed

Base: mainHead: yoga-ffi


📝 Commits (10+)

  • abe8002 using bun-yoga
  • ea18c97 Replace yoga-layout with bun-yoga
  • 9f943f3 Remove top-level await to enable bytecode compilation
  • eeb543a Merge branch 'main' into yoga-ffi
  • df8566a Fix duplicate entry for 'jimp' in package.json
  • cd1e953 Update package.json
  • aebb519 Replace yoga-layout with bun-yoga in LineNumberRenderable
  • 15e8afa revert back to import
  • 9a6b244 Merge branch 'main' into yoga-ffi
  • 5de3458 chore: update bun-yoga to 0.2.5

📊 Changes

12 files changed (+31 additions, -13 deletions)

View changed files

📝 bun.lock (+15 -3)
📝 packages/core/package.json (+2 -2)
📝 packages/core/scripts/build.ts (+1 -0)
📝 packages/core/src/Renderable.ts (+1 -1)
📝 packages/core/src/index.ts (+1 -1)
📝 packages/core/src/lib/yoga.options.test.ts (+1 -1)
📝 packages/core/src/lib/yoga.options.ts (+1 -1)
📝 packages/core/src/renderables/Box.ts (+1 -1)
📝 packages/core/src/renderables/EditBufferRenderable.ts (+1 -1)
📝 packages/core/src/renderables/LineNumberRenderable.ts (+1 -1)
📝 packages/core/src/renderables/TextBufferRenderable.ts (+1 -1)
📝 packages/core/src/renderer.ts (+5 -0)

📄 Description

Replace yoga-layout (WASM) with bun-yoga (native FFI via Zig)

  • Faster layout calculations using native code instead of WASM
  • Supports Windows, Linux, and macOS

Closes #355

I created the bun-yoga package using Bun FFI: https://github.com/remorses/bun-yoga


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/anomalyco/opentui/pull/356 **Author:** [@remorses](https://github.com/remorses) **Created:** 11/28/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `yoga-ffi` --- ### 📝 Commits (10+) - [`abe8002`](https://github.com/anomalyco/opentui/commit/abe80023abaa7c237ca77feacdb2784379da56da) using bun-yoga - [`ea18c97`](https://github.com/anomalyco/opentui/commit/ea18c97dd22f24da9ee5532bdbc9d580e741294e) Replace yoga-layout with bun-yoga - [`9f943f3`](https://github.com/anomalyco/opentui/commit/9f943f3118b01743c273985a9f2df117534b7d4d) Remove top-level await to enable bytecode compilation - [`eeb543a`](https://github.com/anomalyco/opentui/commit/eeb543ab5d9177f221184bf3c48bce9c6f6423b8) Merge branch 'main' into yoga-ffi - [`df8566a`](https://github.com/anomalyco/opentui/commit/df8566a278cdeba815164af9174746c99d064632) Fix duplicate entry for 'jimp' in package.json - [`cd1e953`](https://github.com/anomalyco/opentui/commit/cd1e95399c5627ced158f29cb44068241447dfd3) Update package.json - [`aebb519`](https://github.com/anomalyco/opentui/commit/aebb519658f23f6d9a192d8c6deb1a5801b42655) Replace yoga-layout with bun-yoga in LineNumberRenderable - [`15e8afa`](https://github.com/anomalyco/opentui/commit/15e8afa785616f2e215c8c9448364ebbb6a5300f) revert back to import - [`9a6b244`](https://github.com/anomalyco/opentui/commit/9a6b244f57a64a91fa72cf3877cdcb689c231981) Merge branch 'main' into yoga-ffi - [`5de3458`](https://github.com/anomalyco/opentui/commit/5de3458d5ecafac8aaea55a17737a8c6168faa9a) chore: update bun-yoga to 0.2.5 ### 📊 Changes **12 files changed** (+31 additions, -13 deletions) <details> <summary>View changed files</summary> 📝 `bun.lock` (+15 -3) 📝 `packages/core/package.json` (+2 -2) 📝 `packages/core/scripts/build.ts` (+1 -0) 📝 `packages/core/src/Renderable.ts` (+1 -1) 📝 `packages/core/src/index.ts` (+1 -1) 📝 `packages/core/src/lib/yoga.options.test.ts` (+1 -1) 📝 `packages/core/src/lib/yoga.options.ts` (+1 -1) 📝 `packages/core/src/renderables/Box.ts` (+1 -1) 📝 `packages/core/src/renderables/EditBufferRenderable.ts` (+1 -1) 📝 `packages/core/src/renderables/LineNumberRenderable.ts` (+1 -1) 📝 `packages/core/src/renderables/TextBufferRenderable.ts` (+1 -1) 📝 `packages/core/src/renderer.ts` (+5 -0) </details> ### 📄 Description Replace yoga-layout (WASM) with bun-yoga (native FFI via Zig) - Faster layout calculations using native code instead of WASM - Supports Windows, Linux, and macOS Closes #355 I created the bun-yoga package using Bun FFI: https://github.com/remorses/bun-yoga --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-14 09:26:52 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/opentui#1256
No description provided.