0.0.1 • Published 9 months ago

@moritzrs/jsoncanvas v0.0.1

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

jsoncanvas

Build NPM Version NPM Bundle Size NPM Downloads GitHub License

Fully typed schema for JSON Canvas.

What is this?

This package defines the types described in the JSON Canvas specification.

It also provides a simple function to parse a source string into a JSON Canvas document.

When to use this

This project is useful if you want to read in JSON Canvas documents and work with them in a type-safe way.

It does nothing but checking if an input string contains a valid JSON Canvas document and returns it as a fully typed object.

Install

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

npm install @moritzrs/jsoncanvas

Use

import { readFileSync } from "fs";
import { jsonCanvas } from "@moritzrs/jsoncanvas";

const source = readFileSync("example.canvas", "utf8");
const canvas = jsonCanvas(source);

API

This package exports only the jsonCanvas function, as well as the types described in the JSON Canvas specification.

jsonCanvas(source: string): Canvas

Parse a JSON Canvas document from a string. Throws an error if the source string is not a valid JSON Canvas document.

Parameters
  • source (string) — The source string to parse.
Returns

A fully typed JSON Canvas document.

Compatibility

This package was tested to work with node version 18 and later.

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