{"id":13478683,"url":"https://github.com/ratel-rust/ratel-core","last_synced_at":"2025-05-16T10:07:48.094Z","repository":{"id":44164629,"uuid":"56728840","full_name":"ratel-rust/ratel-core","owner":"ratel-rust","description":"High performance JavaScript to JavaScript compiler with a Rust core","archived":false,"fork":false,"pushed_at":"2023-01-07T02:42:38.000Z","size":2254,"stargazers_count":436,"open_issues_count":45,"forks_count":17,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-12T06:05:50.543Z","etag":null,"topics":["ast","compiler","javascript","parser","performance","rust","transpiler"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ratel-rust.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-04-21T00:03:01.000Z","updated_at":"2025-03-08T20:05:47.000Z","dependencies_parsed_at":"2023-02-06T10:46:10.671Z","dependency_job_id":null,"html_url":"https://github.com/ratel-rust/ratel-core","commit_stats":null,"previous_names":["honeybadger-rust/honeybadger"],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ratel-rust%2Fratel-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ratel-rust%2Fratel-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ratel-rust%2Fratel-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ratel-rust%2Fratel-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ratel-rust","download_url":"https://codeload.github.com/ratel-rust/ratel-core/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253763958,"owners_count":21960484,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ast","compiler","javascript","parser","performance","rust","transpiler"],"created_at":"2024-07-31T16:02:00.714Z","updated_at":"2025-05-16T10:07:43.084Z","avatar_url":"https://github.com/ratel-rust.png","language":"Rust","readme":"![Ratel](http://maciej.codes/things/ratel-400.png)\n\n# ratel-core\n\n[![Travis CI](https://travis-ci.org/ratel-rust/ratel-core.svg)](https://travis-ci.org/ratel-rust/ratel-core)\n[![Crates.io](https://img.shields.io/crates/v/ratel.svg)](https://crates.io/crates/ratel)\n[![Discord](https://img.shields.io/discord/530727712969588746.svg?logo=discord)](https://discord.gg/5YmRBvu)\n[![Gitter](https://img.shields.io/gitter/room/ratel-rust/Lobby.svg?logo=gitter)](https://gitter.im/ratel-rust/Lobby)\n\n**Ratel** is a high performance JavaScript to JavaScript compiler with a Rust core. Its goal is to take newest versions of JavaScript as input, and produce output that's compatible with older versions of the language.\n\n[**Online REPL with Wasm**](http://maciej.codes/ratel-wasm/), courtesy of [cmtt](https://github.com/cmtt).\n\nThis repo is split in two separate folders:\n\n- `core` contains the main Rust codebase that does all the heavy lifting.\n- `ffi` contains the Node.js wrapper around the Rust core with [Neon](https://neon-bindings.com/) bindings.\n\nFor common usage checkout the [ratel-cli](https://github.com/ratel-rust/ratel-cli) repo.\n\n## Performance\n\nWhile still incomplete, the Parser part of **Ratel** can run circles around even the fastest parsers built in JavaScript, here it is compared to [Esprima](http://esprima.org/) using the ratel FFI.\n\n![ratel chart](https://user-images.githubusercontent.com/787228/46786973-beee0c80-cd36-11e8-989a-62b92d624d38.png)\n\nThe benchmarks visualized above can be executed in the `ffi` folder using the `npm run benches` command.\n\n## Contributors\n\nThis project is created and maintained by [Maciej Hirsz](https://github.com/maciejhirsz) with the help of awesome [contributors](https://github.com/ratel-rust/ratel-core/graphs/contributors). Extended thanks to:\n\n- [cmtt](https://github.com/cmtt) for work on the Node.js FFI and testing.\n- [Jan Schulte](https://github.com/schultyy) for the initial version of transformer and codegen.\n\n## Logo\n\nThe smirky **Ratel** by the courtesy of [A. L. Palmer](https://www.behance.net/alpalmer60b4).\n\n## License\n\nThis code is distributed under the terms of both the MIT license\nand the Apache License (Version 2.0), choose whatever works for you.\n\nSee [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT) for details.\n","funding_links":[],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fratel-rust%2Fratel-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fratel-rust%2Fratel-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fratel-rust%2Fratel-core/lists"}