Rust-based platform for the Web
Go to file
강동윤 f44e25c3af
fix(es/minifier): Improve output of minifier (#1990)
swc_common:
 - Add `Span.has_mark`.

swc_ecma_codegen:
 - Emit `1e3` for `1000`.
 - Optimize output. (#1986)

swc_ecma_minifier:
 - name mangler: Don't use keywords as an id.
 - `properties`: Optimize member expression with string properties.
 - `inline`: Inline some function expressions even if it's not fn-local.
 - `analyzer`: Track reassignment correctly.
 - `analyzer`: Track fn-local correctly.
 - `sequences`: Inject `void` if required.
 - `inline`: Inline function declarations correctly.
 - `sequences`: Merge expressions into test of if statements.
 - `sequences`: Reduce calls to an assigned variable.
 - Use `Marks` instead of `&dyn Comments`.


swc_ecma_transforms_optimization:
 - `expr_simplifier`: Fix infinite loops.

node/swc:
 - Ensure that `.transform` performs minification. (#1989)
2021-08-04 00:52:47 +09:00
.cargo fix(testing): Allow using it with stable rustc (#1974) 2021-07-29 14:18:21 +09:00
.github feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00
.vscode Migrate to napi (#1009) 2020-08-30 15:29:42 +09:00
atoms fix(es/transforms/compat): Improve performance (#1673) 2021-05-11 04:53:36 +00:00
babel fix(es/transforms): Fix transforms (#1909) 2021-07-10 11:18:28 +00:00
benches feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00
bundler fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
common fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
ecmascript fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
examples Improve ux for rust users (#909) 2020-07-31 18:49:07 +09:00
macros feat(ast_node): Add #[ast_serde] (#1595) 2021-04-21 09:11:50 +00:00
node fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
node-swc fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
scripts chore: Organize project (#1849) 2021-06-24 17:01:21 +09:00
spack feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00
src fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
testing feat(es/minifier): Implement more rules (#1871) 2021-07-30 10:11:27 +09:00
tests fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
vendor feat(es/minifier): Implement minifier partially (#1302) 2021-05-20 13:51:30 +09:00
visit fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
wasm feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00
.gitattributes fix: Fix tests on windows (#1419) 2021-02-23 00:33:11 +09:00
.gitignore feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00
.gitmodules feat(es/minifier): Implement minifier partially (#1302) 2021-05-20 13:51:30 +09:00
.npmignore chore: Organize project (#1849) 2021-06-24 17:01:21 +09:00
.prettierrc feat(es/minifier): Implement minifier partially (#1302) 2021-05-20 13:51:30 +09:00
.rustfmt.toml Upgrade to napi@1 (#1244) 2020-12-30 14:30:09 +09:00
ARCHITECTURE.md chore: Fix typo (#1958) 2021-07-24 13:37:47 +09:00
Cargo.lock fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
Cargo.toml fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
CONTRIBUTING.md fix(testing): Allow using it with stable rustc (#1974) 2021-07-29 14:18:21 +09:00
deny.toml fix(es/transforms/base): Fix fixer (#1496) 2021-03-27 00:45:51 +09:00
jest.config.js fix(node-swc): Fix visitor (#1890) 2021-07-04 12:35:25 +00:00
LICENSE-APACHE initial commit 2017-12-22 22:07:03 +09:00
LICENSE-MIT initial commit 2017-12-22 22:07:03 +09:00
package.json fix(es/minifier): Improve output of minifier (#1990) 2021-08-04 00:52:47 +09:00
README.md chore: Update README.md (#1910) 2021-07-09 20:01:23 +09:00
rust-toolchain fix(es/transforms): Fix transforms (#1909) 2021-07-10 11:18:28 +00:00
tsconfig.json spack: super-fast bundler (#825) 2020-06-13 23:09:45 +09:00
yarn.lock feat(node/swc): Support sourceFileName (#1976) 2021-08-03 00:49:34 +09:00

babel

Make the web (development) faster.

npm Downloads undefined

CI Status

swc is a super-fast typescript / javascript compiler written in rust. It's a library for rust and javascript at the same time. If you are using swc from rust, see rustdoc and for most users, your entrypoint for using library will be parser.

If you are using swc from javascript, please refer to docs on the website.

Documentation

Check out the documentation in the website.

Features

Please see comparison with babel.

Performance

Please see benchmark results on the website.

Supporting swc

Backers on Open Collective Gold sponsors on Open Collective Silver sponsors on Open Collective Bronze sponsors on Open Collective

swc is a community-driven project, and is maintained by a group of volunteers. If you'd like to help support the future of the project, please consider:

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.