Description
NodeJS' Querystring, but then with far stronger safety net.
Key Features
- Useable in the browser through jsDelivr, unpkg and bundle.run
- Useable in NodeJS through package manager of choice
- Typesafe
- Bundled with Rollup for maximum size reduction (only 1kB minified + gzipped!), ES module support and browser support
- Generated TypeScript declarations
- Treeshakeable in Webpack
Install
Install with yarn or npm:
yarn add @favware/querystring
Usage
Stringify
Create a querystring from a JS object
const { stringify } = require('@favware/querystring');
console.log(stringify({ prop: 'value', prop2: 'value2' }));
console.log(stringify({ prop: 'value', prop2: 'value2' }, { separator: '&', equals: '=', includeQuestion: true }));
console.log(stringify({ prop: 'value', prop2: 'value2' }, { separator: '&&', equals: '=', includeQuestion: false }));
Parse
Create a JS object from a querystring
const { parse } = require('@favware/querystring');
console.log(parse('?prop=value&prop2=value2'));
console.log(parse('?prop=value&prop2=value2', { separator: '&', equals: '=' }));
console.log(parse('prop=value&&prop2=value2', { separator: '&&', equals: '=' }));
API Documentation
For the full API documentation please refer to the TypeDoc generated documentation.
Buy us some doughnuts
Favware projects are and always will be open source, even if we don't get donations. That being said, we know there are amazing people who may still want to donate just to show their appreciation. Thank you very much in advance!
We accept donations through Open Collective, Ko-fi, Paypal, Patreon and GitHub Sponsorships. You can use the buttons below to donate through your method of choice.
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!