VDF is a module to convert Valve's KeyValue format to JSON and back using Typescript.
Heavily inspired by simple-vdf
(
< v2.0.0can be used as a drop-in replacement)
You can install VDF through the command line by using the following command:
yarn add @node-steam/vdf
import*asVDFfrom'@node-steam/vdf';// orimport{parse,stringify,}from'@node-steam/vdf';Parse a VDF string into a JSON object
conststring=`"string" "string""false" "false""true" "true""number" "1234""float" "12.34""null" "null""undefined" "undefined""nested"{ "string" "string" "deep" { "string" "string" }}`;constobject=VDF.parse(string);// orconstobject=parse(string);>{string: 'string',false: false,true: true,number: 1234,float: 12.34,null: null,undefined: undefined,nested: {string: 'string',deep: {string: 'string',},},};Parse a JSON object into a VDF string
constobject={string: 'string',false: false,true: true,number: 1234,float: 12.34,null: null,undefined: undefined,nested: {string: 'string',deep: {string: 'string',},},};conststring=VDF.stringify(object);// orconststring=stringify(object);>`"string" "string""false" "false""true" "true""number" "1234""float" "12.34""null" "null""undefined" "undefined""nested"{ "string" "string" "deep" { "string" "string" }}`;Differences from simple-vdf
- Correct parsing of
booleans,numbers,nullandundefined(>= v2.0.0) - ES6 // Typescript syntax
- Typescript definitions
- Modern ES6 tests
- Silas Rech aka. lenovouser
Interested in contributing to VDF? Contributions are welcome, and are accepted via pull requests. Please review these guidelines before submitting any pull requests.
Installing dependencies:
yarn
Compile:
yarn compile
Test:
yarn test
Generate Docs:
yarn docs
This module is thoroughly tested with ava
