Files
cl-tty/cl-tui.asd
Amr Gharbeia f135b56a1a v0.1.0: Yoga FFI binding — CFFI types, 50+ bound functions, 9 tests
- Load Yoga shared library via CFFI (/usr/local/lib/libyoga.so)
- 15 enum constant sets (YGDirection through YGUnit)
- Foreign type definitions: yg-node-ref, yg-size, yg-value
- Core node management: new, free, insert-child, remove-child, get-child-count
- Layout: calculate-layout, get-left/top/width/height
- Style setters: direction, flex-direction, justify-content, align-items,
  align-self, flex-wrap, position-type, flex-grow/shrink/basis, overflow,
  display, width/height, min/max dimensions, padding, margin, border, gap,
  position (point and percent)
- Style getters: width, height, flex-direction, align-items, justify-content
- Disable FP traps for SBCL (Yoga uses NaN for YGUndefined)

GREEN: 9/9 pass (22 assertions)
- test-node-create-free, test-node-child-count, test-node-insert-child
- test-layout-basic-column, test-layout-basic-row
- test-layout-flex-grow, test-layout-absolute-position
- test-layout-padding, test-layout-nested
2026-05-11 07:18:53 -04:00

10 lines
238 B
Common Lisp

(defsystem :cl-tui
:name "cl-tui"
:author "memex"
:version "0.1.0"
:license "AGPLv3"
:description "Reusable Common Lisp Terminal UI Framework"
:depends-on (:cffi :croatoan)
:serial t
:components ((:file "lisp/yoga-ffi")))