Rust-based platform for the Web
Go to file
OJ Kwon 92de2c7884
feat(plugin): Pass serialized ast to a wasm file (#3199)
swc_common:
 - Use correct cargo feature for plugin apis.

swc_plugin:
 - Add hidden functions required for memory operations from host.

swc_plugin_runner:
 - Pass serialized AST to a wasm file.
2022-01-07 15:13:46 +09:00
.cargo chore(ci): Change version of rustc 2022-01-05 19:55:55 +09:00
.github feat(plugin): Pass serialized ast to a wasm file (#3199) 2022-01-07 15:13:46 +09:00
.husky chore: Break cycles (#2941) 2021-12-02 10:44:27 +09:00
.vscode chore: Make rust-analyzer faster (#2962) 2021-12-03 23:14:33 +09:00
crates feat(plugin): Pass serialized ast to a wasm file (#3199) 2022-01-07 15:13:46 +09:00
node-swc chore(ci): Remove redudant plugin test 2022-01-06 18:01:08 +09:00
packages/swc-helpers fix(es/helpers): Don't transpile _typeof helper (#3208) 2022-01-07 14:48:08 +09:00
scripts refactor(bundler): Improve test suite (#3144) 2021-12-29 19:19:44 +09:00
tests feat(plugin): Pass serialized ast to a wasm file (#3199) 2022-01-07 15:13:46 +09:00
.gitattributes chore: Ignore linguist detection for fixtures (#2285) 2021-09-22 19:07:00 +09:00
.gitignore feat(node/core): Include noop swc binaries (#3088) 2021-12-21 20:20:20 +00:00
.gitmodules refactor(bundler): Improve test suite (#3144) 2021-12-29 19:19:44 +09:00
.mocha.setup.js build: Use mocha for exec_ test instead of jest (#3009) 2021-12-11 07:59:21 +00:00
.mocharc.js build: Use mocha for exec_ test instead of jest (#3009) 2021-12-11 07:59:21 +00:00
.npmignore feat(node/core): Include noop swc binaries (#3088) 2021-12-21 20:20:20 +00:00
.prettierrc feat(es/minifier): Implement minifier partially (#1302) 2021-05-20 13:51:30 +09:00
.rustfmt.toml fix(es/minifier): Fix join_vars (#2494) 2021-10-20 05:17:14 +00:00
ARCHITECTURE.md feat(swc): Add IsModule (#2601) 2021-11-16 10:31:02 +00:00
Cargo.lock feat(plugin): Pass serialized ast to a wasm file (#3199) 2022-01-07 15:13:46 +09:00
Cargo.toml chore(ci): Fix publish script (#3197) 2022-01-06 17:03:28 +09:00
CHANGELOG.md chore: Publish crates 2022-01-07 14:49:46 +09:00
cliff.toml chore: Add changelog and pr template (#3017) 2021-12-12 20:41:01 +09:00
CONTRIBUTING.md doc: Update discord link (#3161) 2021-12-31 22:05:47 +09:00
cspell.json fix(es/minifier): Drop unreachable statements eagerly (#3204) 2022-01-06 21:25:06 +09:00
deny.toml refactor(plugin): Add a loader for wasm-based plugin system (#3179) 2022-01-03 19:03:01 +00:00
jest.config.js fix(node-swc): Fix visitor (#1890) 2021-07-04 12:35:25 +00:00
LICENSE chore(node): Publish v1.2.121 2021-12-19 14:14:12 +09:00
package.json chore: Publish v1.2.127 2022-01-05 12:01:49 +09:00
README.md chore: Update markdown files to use "SWC" instead of "swc" (#2744) 2021-11-15 04:26:04 +00:00
rust-toolchain chore(ci): Change version of rustc 2022-01-05 19:55:55 +09:00
tsconfig.json feat(node): Upgrade napi to v2 (#2958) 2021-12-24 02:21:24 +00:00
yarn.lock feat(node): Upgrade napi to v2 (#2958) 2021-12-24 02:21:24 +00:00

babel

Make the web (development) faster.

npm Downloads undefined

CI Status

SWC (stands for Speedy Web Compiler) 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 entry point for using the 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.