2019-02-02 15:42:46 +03:00
< p align = "center" >
< a href = "https://swc-project.github.io/" >
< img alt = "babel" src = "https://raw.githubusercontent.com/swc-project/logo/master/swc.png" width = "546" >
< / a >
< / p >
2018-01-13 14:42:52 +03:00
2019-01-22 11:28:31 +03:00
< p align = "center" >
Make the web (development) faster.
< / p >
2018-01-13 14:42:52 +03:00
2019-01-22 11:28:31 +03:00
< p align = "center" >
2019-02-15 14:24:00 +03:00
< a href = "https://www.npmjs.com/package/@swc/core" >
2019-01-22 11:28:31 +03:00
< img alt = "npm Downloads" src = "https://img.shields.io/npm/dm/swc.svg?maxAge=43200&label=npm%20downloads" >
< / a >
2019-01-24 10:32:45 +03:00
< a href = "https://crates.io/crates/swc_ecma_parser" >
< img alt = "undefined" src = "https://img.shields.io/crates/d/swc_ecma_parser.svg?label=crates.io%20dowloads" >
2019-01-22 11:28:31 +03:00
< / a >
< / p >
< p align = "center" >
< a href = "https://travis-ci.org/swc-project/swc" >
< img alt = "Travis Status" src = "https://img.shields.io/travis/swc-project/swc/master.svg?label=travis&maxAge=43200" >
< / a >
< a href = "https://codecov.io/gh/swc-project/swc" >
< img alt = "Coverage" src = "https://codecov.io/gh/swc-project/swc/branch/master/graph/badge.svg" >
< / a >
< a href = "https://gitter.im/swcproject/Lobby" >
< img alt = "Gitter" src = "https://img.shields.io/gitter/room/swc-project/swc.svg" >
< / a >
< / p >
< h2 align = "center" > Supporting swc< / h2 >
< p align = "center" >
< a href = "#backers" >
< img alt = "Backers on Open Collective" src = "https://opencollective.com/swc/backers/badge.svg" / >
< / a >
< a href = "#sponsors" >
< img alt = "Sponsors on Open Collective" src = "https://opencollective.com/swc/sponsors/badge.svg" / >
< / a >
< / p >
2019-01-22 11:41:44 +03:00
swc is a community-driven project, and is maintained by a group of [volunteers ](https://opencollective.com/swc#team ). If you'd like to help support the future of the project, please consider:
2019-01-22 11:28:31 +03:00
- Giving developer time on the project. (Message us on [Gitter ](https://gitter.im/swcproject/Lobby ) for guidance!)
- Giving funds by becoming a sponsor (see below)!
## Open Collective Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor ](https://opencollective.com/swc#sponsor )]
2018-11-10 11:44:35 +03:00
2019-02-13 12:25:19 +03:00
< h2 align = "center" > Gold Sponsors< / h2 >
< h2 align = "center" > Silver Sponsors< / h2 >
< h2 align = "center" > Bronze Sponsors< / h2 >
< h2 align = "center" > Backers< / h2 >
2019-02-13 12:28:47 +03:00
2019-02-14 10:36:57 +03:00
[Become a backer ](https://opencollective.com/swc#backer ) and get your image on our README on Github with a link to your site.
2019-02-13 12:25:19 +03:00
< a href = "https://opencollective.com/webpack/backer/0/website?requireActive=false" target = "_blank" > < img src = "https://opencollective.com/webpack/backer/0/avatar.svg?requireActive=false" > < / a >
2018-11-10 13:00:26 +03:00
2019-01-19 15:25:34 +03:00
# Documentation
2019-02-11 03:39:54 +03:00
Check out the documentation [in the website ](https://swc-project.github.io/docs/installation ).
2019-01-19 15:25:34 +03:00
2018-11-15 07:29:44 +03:00
# Features
2018-12-30 05:57:27 +03:00
## Parsers
- [x] es2019
- [x] jsx
2019-01-24 10:10:39 +03:00
- [x] typescript
2018-12-30 05:57:27 +03:00
2018-11-15 07:29:44 +03:00
## Transforms
New generation javascript to old-days javascript.
- es3
2018-11-18 08:00:07 +03:00
- [x] member-expression-literals
- [x] property-literals
2018-12-30 06:56:04 +03:00
- [x] reserved-words
2018-11-18 08:00:07 +03:00
- es5
- [ ] property-mutators
2018-11-15 07:29:44 +03:00
- es2015
2018-11-21 12:59:17 +03:00
- [x] arrow-functions
2018-11-25 05:31:48 +03:00
- [x] block-scoped-functions
2018-11-23 13:22:07 +03:00
- [x] block-scoping
2018-11-15 07:29:44 +03:00
- [x] classes
2018-11-28 06:26:19 +03:00
- [x] computed-properties
- [x] destructuring
- [x] duplicate-keys
2018-12-21 15:39:42 +03:00
- [x] for-of
2018-11-21 12:59:17 +03:00
- [x] function-name
2018-11-18 08:00:07 +03:00
- [x] instanceof
2018-11-28 06:26:19 +03:00
- [x] literals
2018-11-21 12:59:17 +03:00
- [x] new-target
2018-11-17 04:02:40 +03:00
- [ ] object-super
2018-11-28 06:26:19 +03:00
- [x] parameters
2018-11-17 04:02:40 +03:00
- [x] shorthand-properties
- [x] spread
2018-11-15 07:29:44 +03:00
- [x] sticky regex (`y` flag)
2018-11-21 12:59:17 +03:00
- [x] template-literals
2018-11-25 05:31:48 +03:00
- [ ] invalid escape sequences inside tagged template literals. (aka es2018)
2018-11-18 08:00:07 +03:00
- [x] typeof-symbol
2018-11-17 04:02:40 +03:00
- [ ] unicode-regex
2018-11-15 07:29:44 +03:00
- es2016
2018-11-18 08:00:07 +03:00
- [x] exponentiation-operator
2018-11-15 07:29:44 +03:00
2018-11-17 04:02:40 +03:00
- es2017
2018-12-24 04:58:40 +03:00
- [x] async-to-generator
2018-11-17 04:02:40 +03:00
- es2018
- [ ] async-generator-functions
- [ ] dotall-regex
2018-12-26 11:09:48 +03:00
- [x] object-rest-spread
- [ ] Using symbol as a key
2018-11-17 04:02:40 +03:00
- [ ] optional-catch-binding
- [ ] unicode-property-regex
2018-12-30 05:57:27 +03:00
- react
- [x] jsx
2018-11-15 07:29:44 +03:00
2018-12-21 10:54:36 +03:00
# Performance
2018-11-10 11:44:35 +03:00
2018-12-28 19:12:41 +03:00
The lower bound of the speedup compared to babel is **16** . The benchmarks were run on Macbook pro, dual core, 2.3GHz Intel Core i5, 16 GB ram
2018-12-21 10:58:44 +03:00
2018-12-21 15:39:42 +03:00
| | 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) |
2018-11-10 11:44:35 +03:00
2018-11-17 10:38:23 +03:00
## Contributing
See [CONTRIBUTING.md ](CONTRIBUTING.md ). You may also find the architecture
documentation useful ([ARCHITECTURE.md](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.
2018-11-10 11:44:35 +03:00
2018-11-10 13:00:26 +03:00
[babel]:https://github.com/babel/babel
[closure compiler]:https://github.com/google/closure-compiler
2018-11-10 11:44:35 +03:00
[rust]:https://www.rust-lang.org