https://github.com/quietcode-org/leojson
LeoJSON is a small JSON brick for Mac OS X 10.5.8 PowerPC. It provides a controlled public JSON API boundary for projects while using vendored JSONKit internally as the parser and serializer engine.
https://github.com/quietcode-org/leojson
darwin json leopard macos macos-package macosx powerpc
Last synced: 9 days ago
JSON representation
LeoJSON is a small JSON brick for Mac OS X 10.5.8 PowerPC. It provides a controlled public JSON API boundary for projects while using vendored JSONKit internally as the parser and serializer engine.
- Host: GitHub
- URL: https://github.com/quietcode-org/leojson
- Owner: quietcode-org
- License: apache-2.0
- Created: 2026-05-22T16:23:12.000Z (10 days ago)
- Default Branch: main
- Last Pushed: 2026-05-23T10:58:11.000Z (9 days ago)
- Last Synced: 2026-05-23T11:31:08.818Z (9 days ago)
- Topics: darwin, json, leopard, macos, macos-package, macosx, powerpc
- Language: HTML
- Homepage:
- Size: 186 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Notice: NOTICE
Awesome Lists containing this project
README
# LeoJSON
LeoJSON is a small Leopard-Crew JSON brick for Mac OS X 10.5.8 PowerPC.
It provides a controlled public JSON API boundary for Leopard-Crew projects while
using vendored JSONKit internally as the parser and serializer engine.
## Target
- Mac OS X 10.5.8 Leopard
- PowerPC only
- Big Endian only
- G4/G5 compatible
- no Intel target
- no Universal Binary target
- no Tiger target
## Public API
Application code should include:
```objc
#import "LeoJSON.h"
````
Applications should link against:
```text
libLeoJSON.a
Foundation.framework
```
Application code must not include or call JSONKit directly. JSONKit remains an
internal implementation detail behind the LeoJSON boundary.
## Minimal usage
```objc
NSString *errorString = nil;
id object = LeoJSONObjectFromData(jsonData,
LeoJSONReadStrict,
&errorString);
if (object == nil) {
NSLog(@"LeoJSON parse failed: %@", errorString);
return;
}
NSData *outData = LeoJSONDataFromObject(object,
LeoJSONWriteCompact,
&errorString);
if (outData == nil) {
NSLog(@"LeoJSON serialization failed: %@", errorString);
return;
}
```
Returned objects are autoreleased and follow Cocoa memory-management rules.
## Build
Default release build:
```sh
make release-gcc42
```
Full local verification:
```sh
make full-smoke-gcc42
```
Archive generation and verification:
```sh
make verify-archive-gcc42
```
## Release layout
```text
LeoJSON-/
include/
LeoJSON.h
LeoJSONVersion.h
lib/
libLeoJSON.a
docs/
README.md
LICENSE
NOTICE
CHANGELOG.md
```
## License
LeoJSON is licensed under the Apache License, Version 2.0.
LeoJSON vendors JSONKit under its Apache License, Version 2.0 option. Original
JSONKit copyright and license notices are preserved in `vendor/JSONKit/`.