#macos #user-input #pax #native #cartridge #apps #forms

pax-chassis-macos

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

75 releases (10 breaking)

new 0.14.1 Apr 26, 2024
0.12.8 Mar 16, 2024
0.10.10 Dec 6, 2023
0.10.7 Oct 20, 2023
0.0.1 Sep 13, 2022

#4 in #cartridge

Download history 9/week @ 2024-01-21 2/week @ 2024-02-04 250/week @ 2024-02-18 360/week @ 2024-02-25 27/week @ 2024-03-03 177/week @ 2024-03-10 140/week @ 2024-03-17 3/week @ 2024-03-24 51/week @ 2024-03-31 1519/week @ 2024-04-14 342/week @ 2024-04-21

1,912 downloads per month

MIT/Apache

310KB
6.5K SLoC

Swift 3.5K SLoC // 0.1% comments Rust 3K SLoC // 0.0% comments

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

~7–11MB
~225K SLoC