GitHub - swc-project/swc: Super-fast alternative for babel
source link: https://github.com/swc-project/swc
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
speedy web compiler
Make the web (development) faster.
swc is rust port of babel and closure compiler.
Installation
Currently this requires nightly version of rust.
npm i -D swc
or
yarn add --dev swc
Features
Transforms
New generation javascript to old-days javascript.
-
es3
- member-expression-literals
- property-literals
- reserved-words
-
es5
- property-mutators
-
es2015
- arrow-functions
- block-scoped-functions
- block-scoping
- Note: this might be buggy (at this time)
- classes
- computed-properties
- destructuring
- duplicate-keys
- for-of
- function-name
- instanceof
- literals
- new-target
- object-super
- parameters
- shorthand-properties
- spread
- sticky regex (
y
flag) - template-literals
- invalid escape sequences inside tagged template literals. (aka es2018)
- typeof-symbol
- unicode-regex
-
es2016
- exponentiation-operator
-
es2017
- async-to-generator
-
es2018
- async-generator-functions
- dotall-regex
- object-rest-spread
- optional-catch-binding
- unicode-property-regex
Performance
The benchmarks were run on Macbook pro, dual core, 2.3GHz Intel Core i5, 16 GB ram
performance swc (ffi) 1,086 ops/sec ±0.77% (84 runs sampled) swc-optimize (ffi) 1,060 ops/sec ±0.63% (87 runs sampled) swc (ffi, simd) 1,295 ops/sec ±0.87% (89 runs sampled) swc-optimize (ffi, simd) 1,270 ops/sec ±0.24% (89 runs sampled) babel 65.72 ops/sec ±6.45% (62 runs sampled)
Contributing
See CONTRIBUTING.md. You may also find the architecture documentation useful (ARCHITECTURE.md).
License
swc is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK