• Stars
    star
    16,473
  • Rank 1,605 (Top 0.04 %)
  • Language
    Rust
  • License
    MIT License
  • Created over 10 years ago
  • Updated 7 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An incremental parsing system for programming tools

tree-sitter

DOI discord matrix

Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. Tree-sitter aims to be:

  • General enough to parse any programming language
  • Fast enough to parse on every keystroke in a text editor
  • Robust enough to provide useful results even in the presence of syntax errors
  • Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application

Links

More Repositories

1

py-tree-sitter

Python bindings to the Tree-sitter parsing library
C
690
star
2

node-tree-sitter

Node.js bindings for tree-sitter
C++
464
star
3

tree-sitter-rust

Rust grammar for tree-sitter
JavaScript
289
star
4

tree-sitter-typescript

TypeScript grammar for tree-sitter
JavaScript
272
star
5

tree-sitter-javascript

Javascript grammar for tree-sitter
JavaScript
272
star
6

tree-sitter-python

Python grammar for tree-sitter
JavaScript
261
star
7

tree-sitter-go

Go grammar for tree-sitter
JavaScript
224
star
8

tree-sitter-cpp

C++ grammar for tree-sitter
JavaScript
198
star
9

tree-sitter-c

C grammar for tree-sitter
JavaScript
175
star
10

tree-sitter-c-sharp

C# Grammar for tree-sitter
JavaScript
171
star
11

tree-sitter-graph

Construct graphs from parsed source code
Rust
163
star
12

tree-sitter-bash

Bash grammar for tree-sitter
JavaScript
152
star
13

tree-sitter-scala

Scala grammar for tree-sitter
JavaScript
146
star
14

tree-sitter-haskell

Haskell grammar for tree-sitter.
JavaScript
141
star
15

tree-sitter-ruby

Ruby grammar for tree-sitter
JavaScript
137
star
16

haskell-tree-sitter

Haskell bindings for tree-sitter
Haskell
136
star
17

tree-sitter-java

Java grammar for tree-sitter
JavaScript
86
star
18

tree-sitter-php

PHP grammar for tree-sitter
JavaScript
86
star
19

tree-sitter-json

JSON grammar for tree-sitter
Makefile
86
star
20

tree-sitter-html

HTML grammar for Tree-sitter
C++
82
star
21

tree-sitter-julia

Julia grammar for Tree-sitter
JavaScript
78
star
22

tree-sitter-verilog

SystemVerilog grammar for tree-sitter
C
77
star
23

tree-sitter-ocaml

OCaml grammar for tree-sitter
JavaScript
71
star
24

tree-sitter-css

CSS grammar for Tree-sitter
JavaScript
66
star
25

ruby-tree-sitter.old

Ruby bindings to tree-sitter
C
60
star
26

tree-sitter-swift

Swift grammar for tree-sitter
JavaScript
56
star
27

tree-sitter-regex

Tree-sitter parser for regular expressions
JavaScript
47
star
28

tree-sitter-cli

CLI tool for creating and testing tree-sitter parsers
JavaScript
43
star
29

tree-sitter-embedded-template

Tree-sitter grammar for embedded template languages like ERB, EJS
C
34
star
30

rust-tree-sitter

Rust bindings to Tree-sitter
Rust
30
star
31

tree-sitter-agda

Agda grammar for tree-sitter
Yacc
29
star
32

tree-sitter-jsdoc

JSDoc grammar for Tree-sitter
Rust
20
star
33

tree-sitter-ql

tree-sitter grammar for the CodeQL language
JavaScript
15
star
34

tree-sitter.github.io

Source HTML for the Tree-sitter organization site
JavaScript
10
star
35

highlight-schema

Schema for syntax highlighting property sheets
JavaScript
7
star
36

csharp-tree-sitter

C# bindings to the Tree-sitter parsing library
C#
6
star
37

tree-sitter-tsq

tree-sitter grammar for the tree-sitter query language
JavaScript
6
star
38

afl-tree-sitter

AFL test harness for tree-sitter runtime and parsers
C
5
star
39

tree-sitter-fluent

JavaScript
4
star
40

tree-sitter-razor

(WIP) C# Razor grammar for tree-sitter
C
4
star
41

tree-sitter-ql-dbscheme

tree-sitter support for `.dbscheme` files (as used in CodeQL).
C
2
star
42

.github

Tree-sitter organization info
1
star