@atproto/lexicon: schema validation library
TypeScript implementation of the Lexicon data and API schema description language, which is part of atproto.
Usage
import { Lexicons } from '@atproto/lexicon'
const lex = new Lexicons()
lex.add({
lex: 1,
id: 'com.example.post',
defs: {
}
})
lex.assertValidRecord('com.example.record', {$type: 'com.example.record', ...})
lex.assertValidXrpcParams('com.example.query', {...})
lex.assertValidXrpcInput('com.example.procedure', {...})
lex.assertValidXrpcOutput('com.example.query', {...})
License
This project is dual-licensed under MIT and Apache 2.0 terms:
Downstream projects and end users may chose either license individually, or both together, at their discretion. The motivation for this dual-licensing is the additional software patent assurance provided by Apache 2.0.