tree-sitter-apache-avro

Crates.iotree-sitter-apache-avro
lib.rstree-sitter-apache-avro
version0.1.1
created_at2025-10-05 16:27:21.733169+00
updated_at2025-10-05 19:57:08.054871+00
descriptionUnofficial Apache Avro Language Parser for the IDL Language
homepage
repositoryhttps://github.com/victorhqc/tree-sitter-apache-avro
max_upload_size
id1869217
size275,602
Victor Quiroz (victorhqc)

documentation

README

Tree Sitter Apache Avro

Introduction

This is an unofficial Apache Avro IDL (.avdl) based on the official specs:

If you notice any bug or problem, please submit an issue or make a pull request. Any contribution is welcomed and needed.

Development

Requirements:

All the parsing logic is specified in grammar.js at the root level. To see if the changes made to it are working, run the tests and compare the results.

npm test:parser

A playground is also available to test the parser (though it needs Docker to run)

npm start

More information about how to write or use the tree parser can be found here: http://tree-sitter.github.io/tree-sitter/

To test the bindings you can also do the following

tree-sitter parse ./test/protocol.avdl
tree-sitter parse ./test/schema.avdl

To check for highlights, run the following

tree-sitter highlight --check ./test/schema.avdl
tree-sitter highlight --check ./test/protocol.avdl

Just make sure to include the local directory where you have this parser in the local tree-sitter configuration. For example, if I have this path under Documents/Code/tree-sitter-apache-avro then the config should be

{
  "parser-directories": [
    "/Users/my_user/github",
    "/Users/my_user/src",
    "/Users/my_user/source",
    "/Users/my_user/projects",
    "/Users/my_user/dev",
    "/Users/my_user/git",
    "/Users/my_user/Documents/Code"
  ],
}
Commit count: 0

cargo fmt