0.0.1 • Published 9 months ago

@moritzrs/jcast-util-from-json v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

jcast-util-from-json

Build NPM Version NPM Bundle Size NPM Downloads GitHub License

jcast utility to parse JSON Canvas into a jcast syntax tree.

What is this?

This package contains a utility to parse JSON Canvas into a syntax tree. The resulting syntax tree can be used to read and manipulate the JSON Canvas. In contrast to the JSON Canvas Spec, the syntax tree groups elements inside groups together and allows for easier manipulation using the unist ecosystem. To serialize the syntax tree back to JSON Canvas, use jcast-util-to-json.

When to use this

You can use this utility when you want to work with JSON Canvas in a syntax tree.

If you just want to parse JSON Canvas into a type-safe object, use jsoncanvas instead.

Install

This package is ESM only. In Node.js (version 18+), install with npm:

npm install @moritzrs/jcast-util-from-json

Use

import { readFileSync } from "fs";
import { visit } from "unist-util-visit";
import { fromJson } from "@moritzrs/jcast-util-from-json";

const json = readFileSync("Untitled.canvas", "utf-8");
const tree = fromJson(json);

// Print all group labels
visit(tree, "group", (group) => {
	console.log(group.value);
});

API

This package exports only the identifier fromJson. There is no default export.

fromJson(json: string): Root

Parse a JSON Canvas string into a jcast syntax tree.

Parameters
  • json (string) — JSON Canvas string to parse.
Returns

JCAST syntax tree representing the JSON Canvas.

Types

This package utilized the types from the jcast package.

Related

Contribute

I don't know if i can check PRs in a timely manner, but feel free to open PRs or issues. If participation is high I will need to add a code of conduct and contribution guidelines.

Disclaimer

This package is not affiliated with Obsidian.md or the developers of Obsidian.md.

License

MIT © Moritz R. Schulz