sxzz/ast-explorer
sxzz/ast-explorer has 577 GitHub stars and 74 forks. Star changes are not measured yet. Last checked 2026-11-10 04:24 UTC. Last push 2026-11-09.
Comment ces chiffres sont mesurés
A web tool to explore the ASTs generated by parsers.
What you can do
- 🦾 Enable code highlighting, suggestions, and formatting with Monaco Editor.
- 🤩 Support most popular front-end languages and parsers.
- 🗒️ Save your code via URL. No database, no server downtime.
- 🐙 Customize parser version via CDN, e.g., @babel/parser alpha.
Progression mesurée des étoiles
- in 24h
- Mise à jour retardée
- in 7 days
- Mise à jour retardée
- in 15 days
- Mise à jour retardée
- in 1 month
- Mise à jour retardée
Variations nettes sur des périodes qui se chevauchent, pas des totaux quotidiens. Les mesures absentes restent vides. Les étoiles indiquent l’intérêt, pas la qualité.
README.md
OriginalAST Explorer
AST Explorer - A web tool to explore the ASTs generated by parsers.
- Stable Release: ast-explorer.dev
- Dev Channel: dev.ast-explorer.dev
Feel free to add more languages and parsers via PR!
Features
- 🦾 Enable code highlighting, suggestions, and formatting with Monaco Editor.
- 🤩 Support most popular front-end languages and parsers.
- 🗒️ Save your code via URL. No database, no server downtime.
- 🐙 Customize parser version via CDN, e.g.,
@babel/parseralpha. - 🌈 Set custom parser options with a GUI.
- 🌚 Good-looking dark mode theme.
- 📱 Even compatible with mobile devices.
Languages and Parsers
- JavaScript / TypeScript
- Vue
- Svelte
- Ember
- Astro
- Angular
- CSS
- HTML
- JSON
- Markdown
- YAML
- Rust
- SQL
- PHP
- Java
- Python
- C#
- Solidity
- WXML
- GraphQL
- Protocol Buffers
More parsers via web-tree-sitter, see tree-sitter parsers.
URL Encode Algorithm
The input code and options are stored in the URL as a hash fragment,
which is the string following the # symbol
and is not transmitted to the server.
Implementation
const code = 'code'
const parserId = 'acorn'
const optionsString = JSON.stringify({
ecmaVersion: 'latest',
sourceType: 'module',
})
const serialized = utoa(
// utoa, or compress() if want to compress the data
JSON.stringify({
c: code,
p: parserId,
o: optionsString,
}),
)
const url = `https://ast-explorer.dev/#${serialized}`
// no compress
function utoa(data: string): string {
return btoa(unescape(encodeURIComponent(data)))
}
// compress is optional
import { strFromU8, strToU8, unzlibSync, zlibSync } from 'fflate'
function compress(data: string) {
const buffer = strToU8(data)
const zipped = zlibSync(buffer, { level: 9 })
const binary = strFromU8(zipped, true)
return btoa(binary)
}
Contributing
To contribute to the project, see Contribution Guide.
Credits
This project references and is inspired by fkling/astexplorer, an open-source web tool for exploring the ASTs generated by various parsers.
Also, thanks to the following projects for their contributions:
Sponsors
License
Explorer des projets similaires
Asabeneh/30-Days-Of-Python
Le défi de programmation 30 Days of Python est un guide pas à pas pour apprendre le langage de programmation Python en 30 jours. Ce défi peut prendre plus de 100 jours. Avancez à votre rythme. Ces vidéos peuvent aussi vous aider : https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,560 étoilesgrafana/grafana
Plateforme ouverte et composable d’observabilité et de visualisation de données. Visualise les métriques, les journaux et les traces issus de plusieurs sources, comme Prometheus, Loki, Elasticsearch, InfluxDB, Postgres et bien d’autres.
77,830 étoilesredis/redis
Pour les développeurs qui créent des applications en temps réel pilotées par les données, Redis est le cache, le serveur de structures de données et le moteur de requêtes documentaires et vectorielles préféré, le plus rapide et le plus riche en fonctionnalités.
77,395 étoilesapache/superset
Apache Superset est une plateforme de visualisation et d'exploration de données.
75,473 étoiles