yolk-codegen CLI
Generates typed Swift and TypeScript bindings from a spec file.
Usage
yolk-codegen <spec.ts> <swift-out-dir> <ts-out-dir>
| Argument | Description |
|---|---|
| spec.ts | Path to the spec file containing *Spec interfaces |
| swift-out-dir | Directory to write generated .swift files |
| ts-out-dir | Directory to write generated .ts files |
Example
yolk-codegen logic/storage.spec.ts macos/Generated logic/src/generated
Output:
✓ Storage → macos/Generated/StorageModule.swift
✓ Storage → logic/src/generated/Storage.ts
Multiple specs
Each spec file is processed independently. To generate from multiple files, run codegen once per file:
yolk-codegen logic/storage.spec.ts macos/Generated logic/src/generated
yolk-codegen logic/network.spec.ts macos/Generated logic/src/generated
Or add it as a script in package.json:
{
"scripts": {
"codegen": "yolk-codegen storage.spec.ts macos/Generated src/generated && yolk-codegen network.spec.ts macos/Generated src/generated"
}
}
Generated file headers
All generated files include a header indicating they should not be modified manually:
// Generated by Yolk codegen — do not edit
Commit generated files alongside the spec — they are build artifacts that should be checked in.