2019-02-02 15:42:46 +03:00
< p align = "center" >
2020-09-21 16:53:48 +03:00
< a href = "https://swc.rs/" >
2022-10-02 11:08:13 +03:00
< img alt = "swc" src = "https://raw.githubusercontent.com/swc-project/logo/master/swc.png" width = "546" >
2019-02-02 15:42:46 +03:00
< / a >
< / p >
2018-01-13 14:42:52 +03:00
2019-01-22 11:28:31 +03:00
< p align = "center" >
2022-10-02 11:08:13 +03:00
Make the web (development) faster.
2019-01-22 11:28:31 +03:00
< / p >
2018-01-13 14:42:52 +03:00
2019-01-22 11:28:31 +03:00
< p align = "center" >
2022-10-02 11:08:13 +03:00
< a href = "https://www.npmjs.com/package/@swc/core" >
2023-02-08 08:46:23 +03:00
< img alt = "downloads (@swc/core)" src = "https://img.shields.io/npm/dm/@swc/core?label=downloads%20%28%40swc%2Fcore%29" >
2022-10-02 11:08:13 +03:00
< / a >
2024-07-02 16:07:46 +03:00
< a href = "https://www.npmjs.com/package/@swc/counter?activeTab=dependents" >
< img alt = "downloads (3rd party)" src = "https://img.shields.io/npm/dm/@swc/counter?label=downloads%20%283rd%20party%29" >
2023-02-08 08:46:23 +03:00
< / a >
< / p >
< p align = "center" >
2022-10-02 11:08:13 +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%20downloads" >
< / a >
< a href = "https://github.com/swc-project/swc/releases/latest" >
2022-06-16 07:54:19 +03:00
< img alt = "GitHub release (latest SemVer)" src = "https://img.shields.io/github/v/release/swc-project/swc" >
2022-10-02 11:08:13 +03:00
< / a >
2019-01-22 11:28:31 +03:00
< / p >
2022-06-16 07:54:19 +03:00
2019-01-22 11:28:31 +03:00
< p align = "center" >
2022-10-02 11:08:13 +03:00
< img alt = "GitHub code size in bytes" src = "https://img.shields.io/github/languages/code-size/swc-project/swc" >
< a href = "https://github.com/swc-project/swc/blob/main/package.json#L22" >
< img alt = "node-current (scoped)" src = "https://img.shields.io/node/v/@swc/core" >
< / a >
2022-06-16 07:54:19 +03:00
< / p >
< p align = "center" >
2022-10-02 11:08:13 +03:00
< a href = "https://discord.com/invite/GnHbXTdZz6" >
< img alt = "Discord" src = "https://img.shields.io/discord/889779439272075314" >
< / a >
2019-01-22 11:28:31 +03:00
< / p >
2021-11-15 07:26:04 +03:00
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 ](https://rustdoc.swc.rs/swc/ ) and for most users, your entry point for using the library will be [parser ](https://rustdoc.swc.rs/swc_ecma_parser/ ).
2021-07-09 14:01:23 +03:00
2022-07-05 07:38:27 +03:00
Also, SWC tries to ensure that
> If you select the latest version of each crates, it will work
2022-09-14 13:33:49 +03:00
for rust users.
2024-04-16 05:20:47 +03:00
MSRV of crates is currently `1.71` .
2022-07-05 07:38:27 +03:00
2024-03-18 09:23:54 +03:00
To update all SWC crates you use, you can run `curl https://raw.githubusercontent.com/swc-project/swc/main/scripts/update-all-swc-crates.sh | bash -s` . This script will update all dependencies to the latest version and run `cargo build` to ensure that everything works.
Note that you need
- `jq`
- `cargo upgrade`
command to run the script.
2022-07-05 07:38:27 +03:00
---
2021-11-15 07:26:04 +03:00
If you are using SWC from JavaScript, please refer to [docs on the website ](https://swc.rs/docs/installation/ ).
2020-07-24 11:24:41 +03:00
2020-08-02 13:10:28 +03:00
# Documentation
2021-02-04 06:12:54 +03:00
Check out the documentation [in the website ](https://swc.rs/docs/installation/ ).
2020-08-02 13:10:28 +03:00
# Features
2021-11-13 09:23:37 +03:00
Please see [comparison with babel ](https://swc.rs/docs/migrating-from-babel ).
2020-08-02 13:10:28 +03:00
# Performance
2021-05-13 18:11:27 +03:00
Please see [benchmark results ](https://swc.rs/docs/benchmark-transform ) on the website.
2020-08-02 13:10:28 +03:00
2019-01-22 11:28:31 +03:00
< h2 align = "center" > Supporting swc< / h2 >
< p align = "center" >
2023-03-06 12:30:21 +03:00
< a href = "https://opencollective.com/swc" >
< img src = "https://raw.githubusercontent.com/swc-project/swc-sponsor-images/main/sponsors.svg" alt = "Sponsors" >
2022-10-02 11:08:13 +03:00
< / a >
2019-01-22 11:28:31 +03:00
< / p >
2021-11-15 07:26:04 +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
2023-02-08 08:46:23 +03:00
- Giving developer time on the project. (Message us on [Discord ](https://discord.gg/GnHbXTdZz6 ) (preferred) or [Github discussions ](https://github.com/swc-project/swc/discussions ) for guidance!)
- Giving funds by becoming a sponsor (see https://opencollective.com/swc)!
2019-02-13 12:25:19 +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
2022-10-02 11:08:13 +03:00
SWC is primarily distributed under the terms of the Apache License (Version 2.0).
2018-11-10 11:44:35 +03:00
2022-10-02 11:08:13 +03:00
See [LICENSE ](LICENSE ) for details.