bridge-js
Installation
SKILL.md
BridgeJS
BridgeJS is a code-generation layer in JavaScriptKit that makes Swift–JavaScript interop faster and easier than raw JSObject/JSValue: you declare the API shape in Swift (or TypeScript), and the tool generates glue code. Two directions: export Swift to JavaScript and import JavaScript into Swift.
Referencing official docs
When you need details, read DocC from the checked-out JavaScriptKit repository: Sources/JavaScriptKit/Documentation.docc/ when inside the JavaScriptKit repo, or .build/checkouts/JavaScriptKit/Sources/JavaScriptKit/Documentation.docc/ when in a project that depends on JavaScriptKit.
Two directions
- Export Swift: Use
@JS(and@JS(namespace:enumStyle:identityMode:)) on functions, classes, structs, enums, closures, protocols, etc. JavaScript then calls into your Swift code. See references/exporting.md. - Import JavaScript: (1) Declare bindings in Swift with
@JSFunction,@JSClass,@JSGetter,@JSSetter; use@JSGetter(from: .global)for globals likedocument/console; inject other implementations viagetImports(). See references/importing.md. (2) Or usebridge-js.d.tsto generate the same Swift bindings. See references/importing-ts.md.