decaffeinate
sucrase
decaffeinate | sucrase | |
---|---|---|
3 | 26 | |
2,702 | 5,587 | |
0.0% | - | |
4.6 | 6.1 | |
8 months ago | 2 months ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
decaffeinate
-
Whoops! Ruby just Crashed in Rails
Then I used decaffeinate to quickly convert those coffeescript files into vanilla JavaScript and uncommented their references in application.js.
-
๐10 Trending projects on GitHub for web developers - 29th October 2021
Sucrase has been extensively tested. It can successfully build the Benchling frontend code Babel React, TSLint, Apollo client, and decaffeinate with allโฆ
-
'No-code' startup Bubble raises $100 mln in round led by Insight Partners
I'm right there with ya cries in not even version 2
If anyone wants to chime in with their stories about using Decaffeinate, I'd be interested!
https://github.com/decaffeinate/decaffeinate
sucrase
-
Show HN: JSX in Browser with Sucrase
Thanks. As for the code compilation, that can be tested and seen in https://sucrase.io/
The demo page is only to show how we can transpile JSX in browsers.
-
Created a simple online JavaScript Playground, it's a place for you to try out your code and ideas.
Thanks u/OutlandishnessKey953, the playground built with React, Docusaurus(https://docusaurus.io/), CodeMirror(https://codemirror.net/), Sucrase(https://sucrase.io/), etc.
-
The TypeScript compiler is now implemented internally with modules
Hi, Sucrase author here.
To be clear, the benchmark in the README does not allow JIT warm-up. The Sucrase numbers would be better if it did. From testing just now (add `warmUp: true` to `benchmarkJest`), Sucrase is a little over 3x faster than swc if you allow warm-up, but it seemed unfair to disregard warm-up for the comparison in the README.
It's certainly fair to debate whether 360k lines of code is a realistic codebase size for the benchmark; the higher-scale the test case, the better Sucrase looks.
> worse it disables esbuild and swc's multi-threading
At some point I'm hoping to update the README benchmark to run all tools in parallel, which should be more convincing despite the added variability: https://github.com/alangpierce/sucrase/issues/730 . In an ideal environment, the results are pretty much the same as a per-core benchmark, but I do expect that Node's parallelism overhead and the JIT warm-up cost across many cores would make Sucrase less competitive than the current numbers.
-
Should i switch to Typescript?
First, npm i -D sucrase to install sucrase. Now you can do node -r sucrase/register ./index.ts to run TypeScript code directly with Node.
-
๐ Building your own Javascript Library with bare minimum
As you might know there are a lot of Javascript bundlers out there, such as webpack, sucrase, parcel, rollup and etc. Bear in mind, not because they have thousands of stars on Github that means they're the best. sometimes new libs are as good as the popular ones but they're still building up their image/popularity in the community. what I bring today is a not sooooo, popular JS bundler called esbuild.
-
Five coding interview questions I hate
Sucrase JS was 2x the speed of esBuild and 50% faster than SWC last I checked.
-
Iโm Porting the TypeScript Type Checker Tsc to Go
Webpack does way more than esbuild, including running a typechecking compiler instead of just transpiling, running compilers able to downlevel emit to ES5 and providing a deep plugin architecture allowing you to hook into any bit you like. But yes, it hasn't been designed with speed in mind - it has been designed with maximum extensibility instead. Its the same reason why Babel is slow compared to sucrase (written in JS, currently faster than SWC and esbuild but doing somewhat less - https://github.com/alangpierce/sucrase)
tsc has in fact been designed with speed in mind (I've been following the project since before it ended up on GitHub). Going beyond 1 order of magnitude performance improvement is highly unlikely.
- Sucrase: A fast, pure-JavaScript transpiler for JavaScript/TypeScript
- GitHub - alangpierce/sucrase: Super-fast alternative to Babel for when you can target modern JS runtimes
- Sucrase: A fast JavaScript/TypeScript transpiler written in JavaScript
What are some alternatives?
bash-shell-to-bat-converter - Converter for bash shell scripts to windows batch files.
swc - Rust-based platform for the Web
apollo-client - :rocket: ย A fully-featured, production ready caching GraphQL client for every UI framework and GraphQL server.
ts-node - TypeScript execution and REPL for node.js
tslint - :vertical_traffic_light: An extensible linter for the TypeScript language
esbuild - An extremely fast bundler for the web
sucraseLICENSE
fork-ts-checker-webpack-plugin - Webpack plugin that runs typescript type checker on a separate process.
Babel (Formerly 6to5) - ๐ Babel is a compiler for writing next generation JavaScript.
swc-node - Faster ts-node without typecheck
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
nextjs-tailwind-ionic-capacitor-starter - A starting point for building an iOS, Android, and Progressive Web App with Tailwind CSS, React w/ Next.js, Ionic Framework, and Capacitor