@aryzing/superqs
Create and parse URL-safe query strings from arbitrary values.
Install with
npm i @aryzing/superqs
# or
yarn add @aryzing/superqs
# or
pnpm i @aryzing/superqs
# or
bun add @aryzing/superqs
Usage
import { stringify, parse } from "@aryzing/superqs";
const data = {
bool: true,
undef: undefined,
nullVal: null,
date: new Date(),
hugeNum: 0xffffffffffffffffffffn,
bin: new Uint8Array([42, 24]),
};
const stringifiedData = stringify(data);
const url = new URL(`https://example.com?data=${stringifiedData}`);
const params = new URLSearchParams(url.search);
const stringifiedDataParam = params.get("data");
const parsedData = parse(stringifiedDataParam);
expect(parsedData).toEqual(data);
Use cases
- Sending data to a browser extension popup.
- Creating shareable links containing application state.
- Passing non-text data to custom elements.
Development
Get started with
bun install
Run tests with
bun run test
Build the package with
bun run build