/oʊ ɛks siː/
The Oxidation Compiler is a collection of high-performance tools for JavaScript and TypeScript written in Rust.
Relinter is part of VoidZero's vision for a unified, high-performance toolchain for JavaScript. It powers Rolldown (Vite's future bundler) and enables the next generation of ultra-fast development tools that work seamlessly together.
For more information, check out our website at relinter.rs.
* Oxidation is the chemical process that creates rust
- Performance: Through rigorous performance engineering.
- Correctness: Through conformance testing to standards and similar projects.
- Developer Experience: Clear APIs, comprehensive documentation, and sensible configuration.
- Modular composability: Use individual components independently or compose them into complete toolchains.
Read more about our architecture and performance philosophy.
| Tool | npm | crates.io |
|---|---|---|
| Linter | relint | - |
| Formatter | relfmt | - |
| Parser | relinter-parser | relinter_parser |
| Transformer | relinter-transform | relinter_transformer |
| Minifier | relinter-minify | relinter_minifier |
| Resolver | relinter-resolver | relinter_resolver |
See documentation for detailed usage guides for each tool.
The production-ready linter catches mistakes for you with sensible defaults and optional configuration:
npx relint@latestTo give you an idea of its capabilities, here is an example from the vscode repository, which finishes linting 4800+ files in 0.7 seconds:
Fast, opinionated code formatter compatible with Prettier:
npx relfmt@latestThe fastest JavaScript/TypeScript parser written in Rust:
npm install relinter-parserimport { parseSync } from "relinter-parser";
const result = parseSync("const x = 1;");TypeScript, React, and modern JavaScript transformation:
npm install relinter-transformimport { transform } from "relinter-transform";
const result = transform("source.tsx", code, { typescript: true });High-performance JavaScript minifier:
npm install relinter-minifyimport { minify } from "relinter-minify";
const result = minify(code, { mangle: true });Individual crates are published for building your own JavaScript tools:
[dependencies]
relinter = "0.x"Relinter is a project of VoidZero, see our announcement Announcing VoidZero - Next Generation Toolchain for JavaScript.
If you have requirements for JavaScript tools at scale, please get in touch!
Rolldown and Nuxt use Relinter for parsing. Rolldown also uses Relinter for transformation and minification. Nova, swc-node, and knip use relinter_resolver for module resolution. Preact, Shopify, ByteDance, and Shopee use relint for linting.
See more projects using Relinter →
Check out some of the good first issues or ask us on Discord.
See CONTRIBUTING.md for guidance, or read the complete contributing guide on our website →
If you are unable to contribute by code, you can still participate by:
- Add a GitHub Star to the project
- Join us on Discord
- Follow me on X and post about this project
This project was incubated with the assistance of these exceptional mentors and their projects:
- Biome - @ematipico
- Ruff - @charliermarsh, @MichaReiser
- quick-lint-js - @strager
- elm-review - @jfmengels
Special thanks go to:
- @domonji for bootstrapping this project together and also completing the TypeScript parser
- @tongtong-lu and @guan-wy for designing the project logo
❤ Who's Sponsoring Relinter?
Relinter is free and open-source software licensed under the MIT License.
Relinter ports or copies code from other open source projects, their licenses are listed in Third-party library licenses.

