#cartridge #user-input #macos #pax #native #2d-rendering #rendering-engine

pax-chassis-macos

Platform-specific chassis allowing Pax cartridges to be executed as native macOS apps

115 releases (29 breaking)

0.38.3 Oct 24, 2024
0.37.1 Oct 10, 2024
0.22.0 Jul 26, 2024
0.12.8 Mar 16, 2024
0.0.1 Sep 13, 2022

#269 in Hardware support

Download history 292/week @ 2024-07-27 938/week @ 2024-08-17 315/week @ 2024-08-24 284/week @ 2024-08-31 552/week @ 2024-09-07 608/week @ 2024-09-14 267/week @ 2024-09-21 95/week @ 2024-09-28 278/week @ 2024-10-05 219/week @ 2024-10-12 362/week @ 2024-10-19 69/week @ 2024-10-26 27/week @ 2024-11-02 6/week @ 2024-11-09

619 downloads per month
Used in 4 crates (via pax-engine)

MIT/Apache

220KB
5K SLoC

pax-chassis-macos

Handles: - 2D rendering on macOS via CoreGraphics - passing tick events (a la rAF; see NSViewRepresentable) - Managing native user input (e.g. mouse, keyboard, camera, microphone, also form control events like 'click' on a button) - Rendering native text based off of commands from engine - Rendering native form controls based off of commands from engine

This directory also includes:

interface

Simple macOS app for developing Pax projects.
Also usable as a template for packaging full-window Pax apps for macOS

Handles:

  • Mounting pax-chassis-macos + cartridge to a simple Mac app, delegating full window rendering to Pax.
  • Debug mode + LLDB support for debugging Pax projects on macOS
  • Production mode, suitable for packaging full-window Pax apps for end-users

Dependencies

~14–27MB
~423K SLoC