13192
Daily JavaScript / JS community news, links and events. "First, software ate the world, the web ate software, and JavaScript ate the web." 'JavaScript' is a trademark of Oracle Corporation in the US. We are not endorsed by or affiliated with Oracle.
#ECMAScript excitement 😀
#TC39 advanced these proposals this week 🎉
4️⃣ Atomics.waitAsync
4️⃣ RegExp v flag
4️⃣ Well-Formed Unicode Strings
3️⃣ Decorator Metadata
3️⃣ Float16Array
2️⃣ Base64 for Uint8Array
2️⃣ Promise.withResolvers
2️⃣ TimeZone Canonicalizn
1️⃣ Intl.ZonedDateTimeFormat
🔥 Follow @javascriptdaily 🔥
An Introduction to the Bun JavaScript Runtime
A rival JavaScript runtime contender has entered the battle between Node.js and Deno. In this article, we take a first look at Bun, and the reasons it may tempt you away from your current favorite.
🔥 Follow @javascriptdaily 🔥
https://www.sitepoint.com/bun-javascript-runtime-introduction/
Next.js 13.4 is here🎉🎉
Next.js 13.4 is a foundational release, marking stability for the App Router:
App Router (Stable):
- React Server Components
- Nested Routes & Layouts
- Simplified Data Fetching
- Streaming & Suspense
- Built-in SEO Support
Turbopack (Beta): Your local dev server, faster and with improved stability
Server Actions (Alpha): Mutate data on the server with zero client JavaScript
https://nextjs.org/blog/next-13-4
🔥 Follow @javascriptdaily 🔥
Turns out even Nintendo uses JavaScript. A developer discovered that 2015's Mario vs. Donkey Kong: Tipping Stars for the Wii U and 3DS was written with HTML and JavaScript under the hood and managed to build a shim to get it running in a normal browser.
https://twitter.com/JasperRLZ/status/1648046875675856897
🔥 Follow @javascriptdaily 🔥
Trivia: This trademark issue is why the standardized form of JS is called ECMAScript.
Читать полностью…
JavaScript based, automated data exploratory analysis and visualization tools. (Licence: AGPLv3)
https://github.com/Kanaries/Rath
Storybook provides a workshop to build UIs in isolation. It helps you develop hard-to-reach states and edge cases without needing to run the whole app.
https://storybook.js.org/
ECMAScript excitement 😉
These proposals advanced #TC39 this week 🎉
3️⃣ Async Explicit Resource Mgmt
3️⃣ Import Attributes (*)
2️⃣ AsyncContext
2️⃣ Float16Array
2️⃣ Iterator.range
1️⃣ Await Dictionary
1️⃣ Class Method Param Decorators
1️⃣ Promise.withResolvers
1️⃣ TZ Canonicalization
🔥 Follow @javascriptdaily 🔥
Rust for TypeScript Developers
https://youtube.com/playlist?list=PLm323Lc7iSW9Qw_iaorhwG2WtVXuL9WBD
TypeScript 5.0 rebuilt to use ECMAScript modules
With TypeScript 5.0, the TypeScript development team has restructured the entire codebase to use ECMAScript modules, reducing package size and improving performance.
TypeScript 5.0, due from Microsoft as a production release on March 16, has been restructured around the use of ECMAScript modules, a major infrastructure change for the strongly typed JavaScript variant.
Users of TypeScript 5.0, which currently is in a release candidate stage, will need to run Node.js 12 at a minimum. In return, npm installs promise to execute a little faster and take up less space, with the typescript package sized reduced by roughly 46%, Microsoft said in a March 9 bulletin. TypeScript too will be faster, with build times cut by 10% to 25%. API consumers of TypeScript likely will be unaffected.
🔥 Follow @javascriptdaily 🔥
https://www.infoworld.com/article/3690342/typescript-50-rebuilt-to-use-ecmascript-modules.html
#EvanYou thread on the report...
🔥 Follow @javascriptdaily 🔥
https://twitter.com/youyuxi/status/1633249827755814912
2023 Web Framework Performance Report
- How do modern web frameworks compare in real-world usage & performance?
- Does framework choice influence a site’s Core Web Vitals?
- How related is framework choice to JavaScript payload size, and what is the impact?
Take a look at the report by #FredSchott from #Astro. Please keep in mind of the methodology and limitations.
🔥 Follow @javascriptdaily 🔥
https://astro.build/blog/2023-web-framework-performance-report/
https://dev.to/this-is-learning/react-vs-signals-10-years-later-3k71
Читать полностью…
There wouldn't be any need to use Typescript?
https://dev.to/smpnjn/types-may-finally-be-coming-to-javascript-56a2
Did JavaScript just got faster ?
Bun is a modern JavaScript runtime like Node or Deno. It was built from scratch to focus on three main things:
- Start fast (it has the edge in mind).
- New levels of performance (extending JavaScriptCore, the engine).
- Being a great and complete tool (bundler, transpiler, package manager).
Bun uses the JavaScriptCore engine(WebKit), which tends to start and perform a little faster than more traditional choices like V8.
Bun is written in Zig, a low-level programming language with manual memory management.
Most of Bun is written from scratch including the JSX/TypeScript transpiler, npm client, bundler, SQLite client, HTTP client, WebSocket client and more.
https://bun.sh/
🔥 Follow @javascriptdaily 🔥
Nuxt 3.5 is here🎉🎉
Nuxt 3.5.0 is out, bringing Vue 3.3, new defaults, interactive server components, typed pages, environment config - and much more.
- 🙌 Nitropack v2.4
- 💖 Rich JSON payloads
- 🛝 Interactive server components (experimental)
- ⏰ Environment config
- 💪 Fully typed pages
- 🔎 'Bundler' module resolution
- ⚗️ Separate server types
🔥 Follow @javascriptdaily 🔥
https://nuxt.com/blog/v3-5
Vue 3.3 is here🎉🎉
<script setup> + TypeScript DX Improvements
- Imported and Complex Types Support in Macros
- Generic Components
- More Ergonomic defineEmits
- Typed Slots with defineSlots
Experimental Features
Reactive Props Destructure
defineModel
Other Notable Features
- defineOptions
- Better Getter Support with toRef and toValue
- JSX Import Source Support
Maintenance Infrastructure Improvements
🔥 Follow @javascriptdaily 🔥
https://blog.vuejs.org/posts/vue-3-3
New JavaScript Features Coming in ECMAScript 2023
The next JavaScript update brings smaller additions familiar from other languages, but there are more significant developments in the wings.
🔥 Follow @javascriptdaily 🔥
https://thenewstack.io/the-new-javascript-features-coming-in-ecmascript-2023/
Angular v16.0.0 should be launching sometime in May. If you are an angular developer, or considering angular for your next project, knowing these new features are essential. Some of these are long standing features request from the community. Some features (signal, and SSR) bring Angular to par with other modern frameworks. With these features and more coming in v17, modern angular would start looking a lot different from what it is right now. Given the amount the changes angular is bringing in, if we don’t keep ourselves up to date, we won't be able to take advantage of these new features, and our codebase may start looking like a legacy code very soon.
https://itnext.io/angular-16-is-huge-67288a3ff58b
🔥 Follow @javascriptdaily 🔥
Dear Oracle, Please Release the JavaScript Trademark
Ryan Dahl
2022-09-03
In 1995 Netscape partnered with Sun Microsystems to create interactive websites. Famously Brendan Eich spent only 10 days to create the first version of JavaScript - a dynamic programming language with a roughly syntactic lineage from Sun’s Java language. As a result of this partnership Sun held the trademark “JavaScript”. In 2009 Oracle acquired Sun Microsystems and the JavaScript trademark as a result.
The trademark has no commercial value. Other than Oracle's JavaScript Extension Toolkit, Oracle does not have any products using the trademark and presumably no planned usage. Oracle doesn’t even participate in the development of any of the JavaScript engines like V8, JavaScriptCore, or Spidermonkey. It seems very likely that JavaScript trademark infringement would be unenforceable in court due to non-use.
Nevertheless the trademark is a dark cloud looming over the world’s most popular programming language. Careful law abiding engineers bend over backwards to avoid its use - leading to confusing terms like ECMAScript.
The best value Oracle could derive from the trademark would be from the goodwill it receives by granting it into the public domain. It’s understandable why this hasn’t yet happened - it would require a very forward thinking and high level Oracle employee to propose something so intangible. Yet it is obviously the right move to trade a worthless trademark for brand marketing and goodwill.
Oracle, please release the JavaScript trademark.
Source: https://tinyclouds.org/trademark
🔥 Follow @javascriptdaily 🔥
What JavaScript concepts did you understand embarassingly late?
Читать полностью…
What's the best article you've read in the JavaScript or front-end space lately?
Читать полностью…
What do you think?
https://react.dev/learn/start-a-new-react-project
32 Awesome JavaScript Snippets (one-liners) You Should Use
Some useful JavaScript stuff I have saved and I think it can help make your life as a developer easier.
🔥 Follow @javascriptdaily 🔥
https://www.rahul.biz/blog/32-javascript-snippets
Web component JS frameworks overview by their syntax and features
https://component-party.dev
🔥 Follow @javascriptdaily 🔥
WTF Is Code Extraction
By #MiškoHevery (Builder.io / #Qwik)
We are full-stack developers! That means we write both client and server code. But where should we place the server and client code? Conventional wisdom says that we should put them in different files. Except, it is not so simple; we also have code that runs both on the server and client. After all, we do Server-side rendering (SSR), so most of our client code also runs on the server.
I want to challenge the conventional wisdom and convince you that there is an existing trend of putting server and client code together and that it is better. Let’s call it: “code collocation.”
The idea of placing server and client code together is not new, and it is already happening in NextJS/Remix/SolidJS.
But we have a problem to solve. We need to provide code to the server and code to the client, and as of right now, server code can’t access the DOM API and client code can’t read server dependencies such as databases. So there needs to be a way to separate the code.
The act of separating the code and creating server and client code bundles is called code extraction. Three different strategies starting with the most basic to advanced ones, are:
- Export extraction
- Function extraction
- Closure extraction
Let’s dive into them.
🔥 Follow @javascriptdaily 🔥
https://www.builder.io/blog/wtf-is-code-extraction
import function from "something.js";
https://www.freecodecamp.org/news/javascript-modules/
There has been some buzz recently in the frontend world around the term "Signals". In seemingly short order they seem to be everywhere showing up in everything from Preact to Angular.
But they are not a new thing. Not even remotely if you consider you can trace roots back to research in the late 1960s. At its foundation is the same modeling that enabled the first electronic spreadsheets and hardware description languages (like Verilog and VHDL).
Even in JavaScript, we've had them since the dawn of declarative JavaScript Frameworks. They've carried various names over time and come in and out of popularity over the years. But here we are again, and it is a good time to give a bit more context on how and why.
🔥 Follow @javascriptdaily 🔥
https://dev.to/this-is-learning/the-evolution-of-signals-in-javascript-8ob
Introduction to Signals
Angular announced they are adopting Signals to achieve reactivity