Repository navigation
0.1.0
@xcodekit/xcode v0.1.0
Native Xcode .pbxproj parser and serializer for Node.js, written in Rust.
Highlights
- 2-12x faster parsing than TypeScript alternatives
- Byte-identical round-trip serialization (13/13 test fixtures)
- 559 KB native binary (270 KB gzipped)
- Full NeXTSTEP escape sequence support (Unicode, octal, 128-entry mapping table)
- High-level
XcodeProjectAPI with build settings, target queries, orphan detection - 112 tests (87 Rust + 25 JS)
API
import { parse, build, parseAndBuild, XcodeProject } from "@mozharovsky/xcode";
// Low-level: parse/build
const project = parse(readFileSync("project.pbxproj", "utf8"));
const output = build(project);
// Zero-overhead round-trip
const output = parseAndBuild(text);
// High-level
const xcode = XcodeProject.open("ios/MyApp.xcodeproj/project.pbxproj");
xcode.setBuildSetting(targetUuid, "SWIFT_VERSION", "5.0");
xcode.save();Supported Platforms
| Platform | Architecture |
|---|---|
| macOS | arm64, x64 |
| Linux | x64 (glibc), arm64 (glibc) |
| Windows | x64 (MSVC) |
Full Changelog: https://github.com/mozharovsky/xcode/commits/v0.1.0