← All repos

atd

Static types for JSON APIs

Browse cluster: OCaml Systems and Utilities
1,494commits
58contributors
13languages

Tech stack & purpose

ATD (Adaptable Type Definitions) is a cross-language type definition system that generates efficient serializers, deserializers, and validators for JSON APIs. The project provides code generators targeting C++, D, Java, OCaml, Python, Scala, and TypeScript, along with companion tools like atdcat for syntax checking and reformatting, atddiff for detecting incompatibilities between type revisions, and the ability to export definitions to JSON Schema. The implementation is built in OCaml and uses libraries like RapidJSON for C++ output and Yojson for OCaml, with individual generators handling language-specific code generation and JSON interoperability. The project is developed and maintained by volunteers in the open-source community.

Community & reference links

Languages

OCaml
86.4%
C++
4.0%
Python
2.7%
D
1.6%
TeX
1.5%
Java
1.3%
Makefile
0.6%
Shell
0.5%
TypeScript
0.5%
Dune
0.4%
Scala
0.3%
Dockerfile
0.0%
HTML
0.0%

Contributors (top 30 of 58)