Rust-based platform for the Web
Go to file
2023-10-11 12:26:14 +00:00
.cargo refactor(atoms): Remove usage of js_word! to drop string-cache (#7976) 2023-10-08 00:39:51 +00:00
.github chore(xtask): Add --features to xtask bench (#8094) 2023-10-11 05:21:25 +00:00
.husky fix(es): Remove wrong debug assertion (#4445) 2022-04-26 14:16:38 +00:00
.vscode fix(es/module): Fix jsc.paths for projects using pnpm (#7918) 2023-09-06 17:29:47 +00:00
bindings fix(ci): Fix CI (#8079) 2023-10-08 02:03:50 +00:00
crates chore: Publish crates 2023-10-11 12:26:14 +00:00
docs/adr feat(visit): Add path-aware variants (#5073) 2022-07-05 04:38:27 +00:00
node-swc fix(es/minifier): Parse a file as a module only if opts.module is true (#7943) 2023-09-13 05:55:34 +00:00
packages chore: Publish @swc/helpers@v0.5.3 2023-10-07 23:37:18 +09:00
scripts chore: Publish v1.3.92 with swc_core v0.83.38 (#8067) 2023-10-05 07:27:16 +00:00
xtask chore(xtask): Add --features to xtask bench (#8094) 2023-10-11 05:21:25 +00:00
.gitattributes feat(html): Prepare processing system (#4358) 2022-04-22 20:20:47 +09:00
.gitignore fix(es/module): Fix jsc.paths for projects using pnpm (#7918) 2023-09-06 17:29:47 +00:00
.gitmodules fix(html/parser): Fix bugs (#4502) 2022-05-03 02:49:06 +00:00
.kodiak.toml refactor(common): Cleanup & rustfmt (#3495) 2022-02-09 06:33:32 +00:00
.mocha.setup.js chore(repo): Configure prettier (#4523) 2022-05-04 14:25:28 +00:00
.mocharc.js chore(repo): Configure prettier (#4523) 2022-05-04 14:25:28 +00:00
.prettierignore refactor(es/helpers): Move packages for monorepo (#7833) 2023-08-18 04:25:37 +00:00
.prettierrc chore(repo): Configure prettier (#4523) 2022-05-04 14:25:28 +00:00
.rustfmt.toml feat(wasm): Expose async facade interfaces (#5352) 2022-08-01 03:00:28 +00:00
.taplo.toml chore: Update toml formatting (#5368) 2022-08-03 03:07:28 +00:00
.yarnrc.yml chore: Publish v1.2.219 2022-07-27 14:45:02 +09:00
ARCHITECTURE.md feat(swc): Add IsModule (#2601) 2021-11-16 10:31:02 +00:00
Cargo.lock chore: Publish crates 2023-10-11 12:26:14 +00:00
Cargo.toml chore: Use cargo xtask (#8068) 2023-10-05 08:34:51 +00:00
CHANGELOG.md chore: Publish crates 2023-10-11 12:26:14 +00:00
cliff.toml chore(ci): Prepare multi-package repository (#8043) 2023-10-02 04:41:21 +00:00
clippy.toml refactor(atoms): Remove usage of js_word! to drop string-cache (#7976) 2023-10-08 00:39:51 +00:00
CONTRIBUTING.md doc(contributing): Change feature flags for running all tests (#6396) 2022-11-10 09:39:26 +00:00
cspell.json feat(css/ast): Make AST intuitive (#6606) 2022-12-09 02:27:19 +00:00
deny.toml feat(plugin/runner): Update wasmer to v3 (#7197) 2023-04-10 03:40:25 +00:00
LICENSE chore(node): Publish v1.2.121 2021-12-19 14:14:12 +09:00
MAINTENANCE.md doc(repo): Document maintenance (#6145) 2022-10-14 03:29:55 +00:00
out.txt chore: Publish crates 2023-09-24 13:59:06 +09:00
package.json chore: Publish v1.3.92 with swc_core v0.83.38 (#8067) 2023-10-05 07:27:16 +00:00
postinstall.js feat(es/typescript): Support TS 4.9 (#5938) 2022-09-23 16:41:56 +09:00
README.md doc: MSRV 2023-03-09 22:38:05 +09:00
rust-toolchain build(cargo): Update rustc to 2023-07-03 (#7623) 2023-07-05 03:50:43 +00:00
tsconfig.json chore(repo): Configure prettier (#4523) 2022-05-04 14:25:28 +00:00
yarn.lock refactor(bindingins): Create @swc/counter (#7991) 2023-09-22 23:48:27 +00:00

swc

Make the web (development) faster.

downloads (@swc/core) downloads (3rd party)

undefined GitHub release (latest SemVer)

GitHub code size in bytes node-current (scoped)

Discord

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.

Also, SWC tries to ensure that

If you select the latest version of each crates, it will work

for rust users.

MSRV of crates is currently nightly, but we will support stable rustc again in the future.


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

Sponsors

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 the Apache License (Version 2.0).

See LICENSE for details.