expressots / expressots-cli

CLI tool for ExpressoTS application 🐎
https://doc.expresso-ts.com/docs/cli/overview
MIT License
71 stars 4 forks source link

Use the SWC transpiler to improve performance #16

Open joaoneto opened 1 year ago

joaoneto commented 1 year ago

Hello everyone, I would like to suggest an improvement that can be interesting for our project: the use of the transpiler SWC, which is a tool written in rust and that has been standing out in the market, being adopted by Next.js to optimize the developer experience and the performance of build, making it much faster.

According to the official website of SWC, it is 20x faster than Babel on a single thread and 70x faster on four cores. In addition, it supports several features of modern JavaScript, such as arrow functions, optional chaining, TypeScript and more.

The changes that I propose are the following:

This change in the package.json already depends on the solution of issue #15, which is in progress.

Thank you for your attention!

rsaz commented 1 year ago

This suggestion is on stage 2, which means, is waiting for a POC. Excellent. Let's continue the discussion in the issue #15

joaoneto commented 1 year ago

This suggestion is on stage 2, which means, is waiting for a POC. Excellent. Let's continue the discussion in the issue #15

@rsaz I prepared a functional POC, which adds an --experimental flag. To test this POC:

rsaz commented 1 year ago

Discussion approved on #15

To be implemented here in this issue