Skip to content

ahrefs/atd

Folders and files

NameName
Last commit message
Last commit date
May 6, 2024
Feb 10, 2022
Mar 10, 2025
Oct 16, 2023
May 7, 2024
Nov 30, 2023
Jan 23, 2025
Nov 9, 2018
Feb 12, 2022
Mar 17, 2023
Feb 19, 2025
Mar 12, 2022
Jul 10, 2023
Mar 12, 2022
Oct 4, 2023
Feb 19, 2025
Feb 23, 2022
Feb 2, 2018
May 6, 2024
Mar 29, 2018
Feb 23, 2022
Mar 18, 2022
Apr 28, 2014
Nov 1, 2023
Mar 10, 2025
Oct 23, 2023
Oct 23, 2023
Feb 11, 2022
May 6, 2024
May 6, 2024
Oct 17, 2023
Mar 25, 2022
May 6, 2024
Sep 13, 2023
Oct 23, 2023
Aug 9, 2022
Oct 20, 2023
May 18, 2022
Feb 9, 2023
May 18, 2022
Oct 17, 2023
May 6, 2024
May 6, 2024
Oct 22, 2018

Repository files navigation

ATD project - Static Types for Json APIs

CircleCI

ATD stands for Adaptable Type Definitions. It is a syntax for defining cross-language data types. It is used as input to generate efficient and type-safe serializers, deserializers and validators.

Target programming languages currently supported:

Export to other interface description languages (IDLs):

Tools to work with ATD files:

  • atdcat: check syntax, reformat, expand inherited definitions, export to JSON Schema, ...
  • atddiff: compare two revisions of a given ATD interface and report incompatibilities.

All can installed with opam e.g.

$ opam install atdgen

Documentation

here

Contributing

The ATD suite of tools is developed and maintained by volunteers—users like you. Various issues are in need of attention. If you'd like to contribute, please leave a comment on the issue you're interested in, or create a new issue. Experienced contributors will guide you as needed.

There are many simple ways of making a positive impact. For example, you can...

  • Use the software in your project.
  • Give a demo to your colleagues.
  • Share the passion on your blog.
  • Tweet about what you're doing with atd.
  • Report difficulties by creating new issues. We'll triage them.
  • Ask questions on StackOverflow.
  • Answer questions on StackOverflow.
  • Discuss usage on the OCaml forums.
  • Pick a task that's easy for you.

Check out in particular good first time issues and other issues with which we could use some help.

For guidelines on how to contribute code, consult CONTRIBUTING.md.

Authors

The ATD project started in 2010. Contributors include:

  • Martin Jambon
  • Rudi Grinberg
  • Alexandre Bourquelot
  • Ivan Jager
  • oleksiy
  • Gregoire Lionnet
  • David Sheets
  • Rytis Jonynas
  • Jeff Meister
  • Carmelo Piccione
  • Louis
  • Louis Roché
  • Raman Varabets
  • Daniel Weil
  • Egor Chemokhonenko
  • Gabriel Scherer
  • Louis Roché (Ahrefs)
  • Matthew McQuaid
  • koonwen
  • tzm
  • Mathieu Baudet
  • Oleksiy Golovko
  • Rauan Mayemir
  • Hyeseong Kim
  • John Billings
  • Marek Kubica
  • Zach Yannes
  • Antonin Décimo
  • Brendan Long
  • Caio Wakamatsu
  • Chris Yocum
  • Pierre Boutillier
  • Shon Feder
  • metanivek
  • sebastiantoh
  • Anurag Soni
  • Arjun Ravi Narayan
  • Asya-kawai
  • Christophe Troestler
  • Damien Doligez
  • Daniel M
  • Enrico Tassi
  • François Pottier
  • Javier Chavarri
  • Jonas Bergler
  • Kate
  • Stephane Legrand
  • Vincent Bernardoff
  • Zach
  • haoyang
  • pmundkur
  • ygrek

We distribute the source code under the terms of a BSD license.