tree-sitter-json VS swc

Compare tree-sitter-json vs swc and see what are their differences.

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
tree-sitter-json swc
4 139
107 29,984
5.6% 1.4%
6.4 9.9
12 days ago 2 days ago
JavaScript Rust
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

tree-sitter-json

Posts with mentions or reviews of tree-sitter-json. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-19.
  • Emacs and Java Development: Corfu + Cape + LSP-Mode + Treesit
    21 projects | /r/emacs | 19 May 2023
    (use-package treesit :ensure nil :custom ;; Some stuff taken from here: https://robbmann.io/posts/emacs-treesit-auto/ (treesit-extra-load-path '("/usr/lib64/")) (treesit-language-source-alist '((bash . ("https://github.com/tree-sitter/tree-sitter-bash")) (c . ("https://github.com/tree-sitter/tree-sitter-c")) (c++ . ("https://github.com/tree-sitter/tree-sitter-cpp")) (csharp . ("https://github.com/tree-sitter/tree-sitter-c-sharp")) (css . ("https://github.com/tree-sitter/tree-sitter-css")) (elixir ("https://github.com/elixir-lang/tree-sitter-elixir")) (html . ("https://github.com/tree-sitter/tree-sitter-html")) (java . ("https://github.com/tree-sitter/tree-sitter-java")) (javascript . ("https://github.com/tree-sitter/tree-sitter-javascript")) (json . ("https://github.com/tree-sitter/tree-sitter-json")) (lua . ("https://github.com/Azganoth/tree-sitter-lua")) (makefile . ("https://github.com/alemuller/tree-sitter-make")) (org . ("https://github.com/milisims/tree-sitter-org")) (python . ("https://github.com/tree-sitter/tree-sitter-python")) (tsx . ("https://github.com/tree-sitter/tree-sitter-typescript" "master" "tsx/src")) (typescript . ("https://github.com/tree-sitter/tree-sitter-typescript" "master" "typescript/src")) (ruby . ("https://github.com/tree-sitter/tree-sitter-ruby")) (rust . ("https://github.com/tree-sitter/tree-sitter-rust")) (sql . ("https://github.com/m-novikov/tree-sitter-sql")) (toml . ("https://github.com/tree-sitter/tree-sitter-toml")) (yaml . ("https://github.com/ikatyang/tree-sitter-yaml")))) (major-mode-remap-alist '((c-mode . c-ts-mode) (c++-mode . c++-ts-mode) (csharp-mode . csharp-ts-mode) (css-mode . css-ts-mode) (html-mode . html-ts-mode) (java-mode . java-ts-mode) (js-mode . js-ts-mode) (json-mode . json-ts-mode) (makefile-mode . makefile-ts-mode) ;; (org-mode . org-ts-mode) ;; not mature yet (python-mode . python-ts-mode) (typescript-mode . typescript-ts-mode) (ruby-mode . ruby-ts-mode) (rust-mode . rust-ts-mode) (toml-mode . toml-ts-mode) (yaml-mode . yaml-ts-mode))) (treesit-auto-fallback-alist '((toml-ts-mode . conf-toml-mode) (typescript-ts-mode . nil) (tsx-ts-mode . nil))) (treesit-font-lock-settings t) (treesit-simple-indent t) (treesit-defun-type-regexp t)) (use-package treesit-auto :demand t :config (setq treesit-auto-install t) (global-treesit-auto-mode))
  • Building tree-sitter languages for Emacs
    20 projects | /r/emacs | 30 Dec 2022
  • New Package: jsonian-mode
    3 projects | /r/emacs | 22 May 2022
    From curiosity and only, what's the cons/pros to json-tree-siter ?
  • JSON path of current cursor position?
    2 projects | /r/neovim | 25 Jul 2021

swc

Posts with mentions or reviews of swc. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-06.
  • Storybook 8 Beta
    4 projects | dev.to | 6 Feb 2024
    First, we switched the default compiler for new projects from Babel to SWC (Speedy Web Compiler). SWC is dramatically faster than Babel and requires zero configuration. We’ll continue to support Babel in any project currently using it.
  • What is JSDoc and why you may not need typescript for your next project?
    8 projects | dev.to | 22 Jan 2024
    SWC
  • Implementing auth flow as fast as possible using NestJS
    5 projects | dev.to | 23 Oct 2023
    As the reference explains “**SWC** (Speedy Web Compiler) is an extensible Rust-based platform that can be used for both compilation and bundling. Using SWC with Nest CLI is a great and simple way to significantly speed up your development process.”
  • Ruby Outperforms C: Breaking the Catch-22
    4 projects | news.ycombinator.com | 9 Sep 2023
    This is specifically about breaking the myth that performing expensive self-contained operations (e.g, parsing GraphQL) in a native extension (C, Rust, etc.) is always faster than the interpreted language.

    The JS ecosystem has the same problem, people think rewriting everything in Rust will be a magic fix. In practice, there's always the problem highlighted in the post (transitioning is expensive, causes optimization bailouts), as well as the cost of actually getting the results back into Node-land. This is why SWC abandoned the JS API for writing plugins - constantly bouncing back and forth while traversing AST nodes was even slower than Babel (e.g https://github.com/swc-project/swc/issues/1392#issuecomment-...)

  • Building a Minimalist Docker Image with Node, TypeScript
    4 projects | dev.to | 5 Sep 2023
    Why Speedy Web Compiler ?
  • TypeScript Is Surprisingly OK for Compilers
    14 projects | news.ycombinator.com | 18 Aug 2023
  • Speedy Web Compiler: Rust-Based Platform for the Web
    1 project | news.ycombinator.com | 10 Aug 2023
  • FTA: Fast TypeScript Analyzer
    3 projects | dev.to | 2 Jul 2023
    FTA is a TypeScript static analysis tool built on the speedy foundations of swc. FTA is fast; capable of analyzing more than 150 files per second on typical hardware, it offers a powerful addition to your code quality toolkit.
  • Show HN: Ezno, a TypeScript checker written in Rust, is now open source
    4 projects | news.ycombinator.com | 7 Jun 2023
    Very cool! I'm curious, is this intended for dev tooling?

    For example, I could see this (or something similar) being useful as the engine for a typescript language server that would be faster than the standard one

    But if it's not aimed at 1:1 with tsc, would it be intended more for something like swc[1]?

    Or what would you expect people to use this for, besides just being a cool project to learn from?

    [1] https://github.com/swc-project/swc

  • TypeScript team released an explorer for performance tuning
    1 project | news.ycombinator.com | 13 May 2023
    This is... good news, but I still cannot fathom using the default Typescript compiler for regular development. Seriously, leave the type-checking to your IDE and CICD chain, and switch to using tsx (https://www.npmjs.com/package/tsx) or swc (https://swc.rs/) and you will _immediately_ notice the difference in speed and productivity.

What are some alternatives?

When comparing tree-sitter-json and swc you can also consider the following projects:

diffsitter - A tree-sitter based AST difftool to get meaningful semantic diffs

esbuild - An extremely fast bundler for the web

json-rust - JSON implementation in Rust

vite - Next generation frontend tooling. It's fast!

json-snatcher - Get the path to a JSON element in Emacs.

ts-loader - TypeScript loader for webpack

zee - A modern text editor for the terminal written in Rust [Moved to: https://github.com/zee-editor/zee]

tsup - The simplest and fastest way to bundle your TypeScript libraries.

zee - A modern text editor for the terminal written in Rust

vitest - Next generation testing framework powered by Vite.

tcount - Count your code by tokens and patterns in the syntax tree. A tokei/scc/cloc alternative.

ts-node - TypeScript execution and REPL for node.js