
Product
Introducing Socket Firewall Enterprise: Flexible, Configurable Protection for Modern Package Ecosystems
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.
Concise data definition language (RFC 8610) implementation and JSON validator in Node.js
Concise data definition language (RFC 8610) implementation and JSON validator in Node.js.
CDDL expresses Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.
There are also CDDL parsers for other languages:
Note: this is work in progress, feel free to have a look at the code or contribute but don't use this for anything yet!
To install this package run:
$ npm install cddl
This package exposes a CLI as well as a programmatic interface for parsing and transforming CDDL.
The cddl CLI offers a validate command that helps identify invalid CDDL formats, e.g.:
npx cddl validate ./path/to/interface.cddl
âś… Valid CDDL file!
You can also use this package to parse a CDDL file into an abstract syntax tree (AST). For example, given the following CDDL file:
person = {
identity, ; an identity
employer: tstr, ; some employer
}
It parses the content into an AST:
import { parse } from 'cddl'
const ast = parse('./spec.cddl')
console.log(ast)
/**
* outputs:
* [
* {
* Type: 'group',
* Name: 'person',
* Properties: [ [Object], [Object] ],
* IsChoiceAddition: false
* }
* ]
*/
The CDDL AST is defined in source files. The parse method returns Assignment[].
If you are interested in this project, please feel free to contribute ideas or code patches. Have a look at our contributing guidelines](https://github.com/christian-bromann/cddl/blob/master/LICENSE) to get started.
FAQs
Concise data definition language (RFC 8610) implementation and JSON validator in Node.js
The npm package cddl receives a total of 779 weekly downloads. As such, cddl popularity was classified as not popular.
We found that cddl demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.

Security News
Open source dashboard CNAPulse tracks CVE Numbering Authorities’ publishing activity, highlighting trends and transparency across the CVE ecosystem.

Product
Detect malware, unsafe data flows, and license issues in GitHub Actions with Socket’s new workflow scanning support.