(wip) Add JSON support (separate package)