Babel (Formerly 6to5)
swc
Our great sponsors
Babel (Formerly 6to5) | swc | |
---|---|---|
58 | 139 | |
42,901 | 29,952 | |
0.3% | 1.2% | |
9.7 | 9.9 | |
3 days ago | 4 days ago | |
TypeScript | Rust | |
MIT License | Apache License 2.0 |
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.
Babel (Formerly 6to5)
-
What is an Abstract Syntax Tree in Programming?
GitHub | Website
-
Mastering Jest Configuration for React TypeScript Projects with Vite: A Step-by-Step Guide
node 'node_modules/.bin/jest' '/Users/satparkash/code/test-app/src/A pp.test.tsx' -t 'App' FAIL src/App.test.tsx ● Test suite failed to run SyntaxError: /Users/satparkash/code/test-app/src/App.test.tsx: Support for the experimental syntax 'jsx' isn't currently enabled (6:12): 4 | describe('App', () => { 5 | it('should work as expected', () => { > 6 | render(); | ^ 7 | }); 8 | }); 9 | Add @babel/preset-react (https://github.com/babel/babel/tree/main/packages/babel-preset-react) to the 'presets' section of your Babel config to enable transformation. If you want to leave it as-is, add @babel/plugin-syntax-jsx (https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-jsx) to the 'plugins' section to enable parsing. Test Suites: 1 failed, 1 total Tests: 0 total Snapshots: 0 total Time: 0.278 s Ran all test suites matching /\/Users\/satparkash\/code\/test-app\/src\/App.test.tsx/i with tests matching "App".
- Open source public fund experiment - One and a half years update
-
I Reworked my Rate My GMU Professor (Google Extension)
Webpack (Babel) - https://babel.dev/
-
Babel is used by millions, so why are we running out of money? (2021)
I do appreciate your transparency, though I disagree with the sentiment that I’m arguing from a position of bad faith.
It’s a self-evident fact that the Babel team has not shown a moment of interest in lowering their role in the JavaScript ecosystem to anything short of kingmakers. Have a gander at their GitHub README and what do we see?[1]
- “Babel is a compiler for writing next generation JavaScript.” Indefinitely.
- Over a dozen sponsor logos. An embarrassment of riches.
- A literal audio recording of a song in praise of the project.
The Babel team has a well documented history of their priorities[2], emphasizing the need for a modular approach that has no exit strategy[3]. At best, we have a case of accidental entrenchment and long term dependence on the Babel brewing as early as 2017![4]
Compare this infinite circus to the humble but popular Normalize.css, which has the express purpose to stop existing.[5]
If the Babel team wants to raise some money, they can start by putting a plan together that would codify an exit strategy. It’s certainly more noble than their current plan of barnacling on to every NPM package…
- [1] https://github.com/babel/babel
- [2] https://github.com/babel/notes
- [3] https://github.com/babel/notes/blob/master/2016/2016-07/july...
- [4] https://github.com/babel/notes/blob/master/2017/2017-04/apri...
- [5] https://nicolasgallagher.com/about-normalize-css/
-
Reveddit does not work
The problem was I had used some new code, Javascript's replaceAll(), that is unsupported by older browsers. And, the setup I have to automatically fix such issues (called babel) is out of date. So, while this problem appears to be resolved there, I hadn't updated that in awhile.
-
The Complete Guide for Setting Up React App from Scratch (feat. TypeScript)
babel-loader(v9.1.0): allows transpiling JavaScript files using Babel and webpack.
-
Upgrade your Lerna Workspace - Make it Fast and Modern!
created 6 years ago to solve the specific problem of managing the Babel repo packages
-
Help with error when trying to include context in application before building and uploading to server.
https://github.com/babel/babel/discussions/13013 maybe this could help
- “Ignore the f'ing haters ” And other lessons learned from creating a popular
swc
-
Storybook 8 Beta
First, we switched the default compiler for new projects from Babel to SWC (Speedy Web Compiler). SWC is dramatically faster than Babel and requires zero configuration. We’ll continue to support Babel in any project currently using it.
-
What is JSDoc and why you may not need typescript for your next project?
SWC
-
Implementing auth flow as fast as possible using NestJS
As the reference explains “**SWC** (Speedy Web Compiler) is an extensible Rust-based platform that can be used for both compilation and bundling. Using SWC with Nest CLI is a great and simple way to significantly speed up your development process.”
-
Ruby Outperforms C: Breaking the Catch-22
This is specifically about breaking the myth that performing expensive self-contained operations (e.g, parsing GraphQL) in a native extension (C, Rust, etc.) is always faster than the interpreted language.
The JS ecosystem has the same problem, people think rewriting everything in Rust will be a magic fix. In practice, there's always the problem highlighted in the post (transitioning is expensive, causes optimization bailouts), as well as the cost of actually getting the results back into Node-land. This is why SWC abandoned the JS API for writing plugins - constantly bouncing back and forth while traversing AST nodes was even slower than Babel (e.g https://github.com/swc-project/swc/issues/1392#issuecomment-...)
-
Building a Minimalist Docker Image with Node, TypeScript
Why Speedy Web Compiler ?
- TypeScript Is Surprisingly OK for Compilers
- Speedy Web Compiler: Rust-Based Platform for the Web
-
FTA: Fast TypeScript Analyzer
FTA is a TypeScript static analysis tool built on the speedy foundations of swc. FTA is fast; capable of analyzing more than 150 files per second on typical hardware, it offers a powerful addition to your code quality toolkit.
-
Show HN: Ezno, a TypeScript checker written in Rust, is now open source
Very cool! I'm curious, is this intended for dev tooling?
For example, I could see this (or something similar) being useful as the engine for a typescript language server that would be faster than the standard one
But if it's not aimed at 1:1 with tsc, would it be intended more for something like swc[1]?
Or what would you expect people to use this for, besides just being a cool project to learn from?
[1] https://github.com/swc-project/swc
-
TypeScript team released an explorer for performance tuning
This is... good news, but I still cannot fathom using the default Typescript compiler for regular development. Seriously, leave the type-checking to your IDE and CICD chain, and switch to using tsx (https://www.npmjs.com/package/tsx) or swc (https://swc.rs/) and you will _immediately_ notice the difference in speed and productivity.
What are some alternatives?
Traceur compiler - Traceur is a JavaScript.next-to-JavaScript-of-today compiler
esbuild - An extremely fast bundler for the web
Live Server - A simple development http server with live reload capability.
vite - Next generation frontend tooling. It's fast!
ESLint - Find and fix problems in your JavaScript code.
ts-loader - TypeScript loader for webpack
Lebab - Turn your ES5 code into readable ES6. Lebab does the opposite of what Babel does.
tsup - The simplest and fastest way to bundle your TypeScript libraries.
dark-mode - Control the macOS dark mode from the command-line
vitest - Next generation testing framework powered by Vite.
ECMAScript 6 compatibility table - ECMAScript compatibility tables
ts-node - TypeScript execution and REPL for node.js