Skip to content
/ vdf Public

Module to convert Valve's KeyValue format to JSON and back

License

Notifications You must be signed in to change notification settings

node-steam/vdf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jul 2, 2021
b248711 · Jul 2, 2021

History

29 Commits
Jul 2, 2021
Nov 28, 2017
Jul 2, 2021
Jul 2, 2021
Apr 17, 2017
Apr 17, 2017
Apr 17, 2017
Sep 11, 2019
Apr 17, 2017
Apr 18, 2017
Jul 2, 2021
Nov 28, 2017
Jul 2, 2021
Apr 17, 2017
Jul 2, 2021
Jul 2, 2021

Repository files navigation

Chat Travis CI Dependencies Version Downloads License Runkit

npm statistics

VDF is a module to convert Valve's KeyValue format to JSON and back using Typescript.

Heavily inspired by simple-vdf

(< v2.0.0 can be used as a drop-in replacement)

Differences

Installation

You can install VDF through the command line by using the following command:

yarn add @node-steam/vdf

Usage:

import * as VDF from '@node-steam/vdf';

// or

import {
    parse,
    stringify,
} from '@node-steam/vdf';

Documentation:

Generated Documentation

VDF.parse(text: string)

Parse a VDF string into a JSON object

const string = `
"string"          "string"
"false"           "false"
"true"            "true"
"number"          "1234"
"float"           "12.34"
"null"            "null"
"undefined"       "undefined"
"nested"
{
    "string"      "string"
    "deep"
    {
        "string"  "string"
    }
}
`;

const object = VDF.parse(string);

// or

const object = parse(string);

> {
    string:     'string',
    false:      false,
    true:       true,
    number:     1234,
    float:      12.34,
    null:       null,
    undefined:  undefined,
    nested: {
        string: 'string',
        deep: {
            string: 'string',
        },
    },
};

VDF.stringify(object: object)

Parse a JSON object into a VDF string

const object = {
    string:     'string',
    false:      false,
    true:       true,
    number:     1234,
    float:      12.34,
    null:       null,
    undefined:  undefined,
    nested: {
        string: 'string',
        deep: {
            string: 'string',
        },
    },
};

const string = VDF.stringify(object);

// or

const string = 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

Contributors

Contributing:

Interested in contributing to VDF? Contributions are welcome, and are accepted via pull requests. Please review these guidelines before submitting any pull requests.

Help:

Installing dependencies:

yarn

Compile:

yarn compile

Test:

yarn test

Generate Docs:

yarn docs

Tests:

This module is thoroughly tested with ava

License:

Code licensed under MIT, documentation under CC BY 3.0.