Building the Future of JavaScript Packages
Develop, Run, Distribute, Discover, and Secure your Javascript Packages
Develop, Run, Distribute, Discover, and Secure your Javascript Packages
Many developers prefer to eschew complex, modern build processes and use JavaScript in a more old-school way. You can definitely get by without a build system, and Julia explores some ways to import libraries in such a setup.
This isn't click bait. We really did this! We work in a very large Javascript monorepo at Microsoft we colloquially call 1JS. It's large not only in terms of GB, but also in terms of sheer volume of code and contributions. We recently crossed the 1,000 monthly active users mark, about 2,500 packages, and approximately 20 million lines of code! The most recent clone of the repo clocked in at an astonishing 178GB.
A tutorial that brings together a lot of ideas in one place. CLIP is used to turn images into text descriptions. Postgres is used as a vector database. JavaScript provides the glue for both the frontend (with React) and backend (Node.js).
In a rather quirky slidedeck presented at TC39 recently, an idea was floated to call the language JS engines implement ‘JS0’ and a myriad of features that have to be compiled to JS0 ‘JSSugar’.
Examples of numerous common algorithms (e.g. bit manipulation, Pascal’s triangle, Hamming distance) and data structures (e.g. linked lists, tries, graphs) with explanations.
It has long been a bone of contention that Oracle owns the trademark for ‘JavaScript’ (we put out a call two years ago) but this marks the first serious effort to try and change that, including petitioning the USPTO, if necessary. You can support the effort by signing this open letter, joining a vast array of JavaScript luminaries.
The delete operator is arguably an old language feature of JavaScript. As it literally means, it wants to destroy something, but what exactly can be destroyed?
The legendary Js13kGames competition is one of the greatest game jams! Participants have one month to make a web browser game that fits in a 13 kilobyte zip file. To put that into perspective, a floppy disk from the before times could hold 1.44 MB, enough to fit over 100 JS13K games!
JavaScript remains at the core of web development, with frameworks like React and Angular continuing to evolve. There's been discussion around the slight decline in satisfaction with these frameworks, but they still play a critical role in the modern web ecosystem. New trends also highlight the increasing integration of AI and machine learning capabilities into these frameworks
Although JavaScript regexes used to be underpowered compared to other modern flavors, numerous improvements in recent years mean that’s no longer true. Steven Levithan evaluates the history and present state of regular expressions in JavaScript with tips to make your regexes more readable, maintainable, and resilient.
It feels odd including something about 2023 in June 2024, but the results of the major annual JavaScript developer survey are now out. It’s interesting to see what features JS devs do and don’t use, changes in library popularity over time, what build tools people are using, the divide between JavaScript and TypeScript usage, and much more besides.
JSR significantly improves the code distribution process by simplifying complexities that have long troubled developers. By being ESM-only and TypeScript-first, JSR eliminates the frustrating need to juggle package.json configurations and navigate through labyrinthine tsconfig compiler options.
This article delves into the intricacies of JavaScript and its building components, focusing on the Event Loop mechanism. It explores the challenges of programming in a single-threaded environment and how to overcome them using the Event Loop and async/await, providing real-time examples and tips for writing cleaner, more efficient code.
The blog post provides an in-depth explanation of JavaScript's asynchronous nature, focusing on callback and microtask queues. It includes code examples and step-by-step walkthroughs to illustrate how these queues interact with the call stack and event loop. The author also highlights the priority of the microtask queue over the callback queue in executing tasks.
A playground to get experimenting with new Signals Proposal. The propsal description can be found here: https://github.com/tc39/proposal-signals.
Namely, using Promise.race to search through audio files forwards and backwards at the same time and stop as soon as the relevant metadata is found.
LLRT (Low Latency Runtime) is a lightweight JavaScript runtime designed to address the growing demand for fast and efficient Serverless applications. LLRT offers up to over 10x faster startup and up to 2x overall lower cost compared to other JavaScript runtimes running on AWS Lambda.
The confusing details of Apple’s quest to kill the only viable alternative to their App Store
Covers the fundamentals, digging into htmx’s codebase – plus it’s an unlisted video so you can feel like you’re in a secret club.
A story of trying to reduce complexity, by way of Nx, pnpm workspaces and, eventually, Turborepo. “It just works!”
MySQL continues to gear up innovations and now includes rich procedural programming capabilities inside the database. Developers can now write JavaScript stored programs (functions and procedures) in the MySQL database server. The stored programs will be run with the GraalVM run time. This is available as a Preview in MySQL Enterprise Edition and can be downloaded via Oracle Technology Network (OTN). MySQL-JavaScript is also available in the MySQL Heatwave cloud service on OCI, AWS and Azure.
jQuery 4.0.0 has been in the works for a long time, but it is now ready for a beta release! There’s a lot to cover, and the team is excited to see it released. We’ve got bug fixes, performance improvements, and some breaking changes. We removed support for IE<11 after all! Still, we expect disruption to be minimal.
I’d usually shy away from a list-based post on Medium, but this is a good exception. As a rare example of a top-notch developer who's also involved in hiring other developers, Eric provides useful advice.
Welcome to the 8th edition of the JavaScript Rising Stars, the place to see the trends about the JS ecosystem in 2023. Let's see how a set of UI components you copy-paste took the world by storm!
MySQL continues to gear up innovations and now includes rich procedural programming capabilities inside the database. Developers can now write JavaScript stored programs (functions and procedures) in the MySQL database server.
Ania is back with another of her fantastic step-by-step walkthrough videos. Now you can actually implement Minesweeper, rather than waste time playing it..
Bid farewell to localStorage! Embrace IndexedDB for speed, type-safe storage, and non-blocking data…
Artem shares a tip that helps him write better tests or, as he calls it, the ‘Golden Rule of Assertions’: “A test must fail if, and only if, the intention behind the system is not met.”
I think about this story a lot. You don’t want to fall into the same trap. You want you to get to Senior Developer at some point.
You use console.log to output text, but did you know that in the browser console it can be used to render other things, like SVGs and HTML? This post is packed with examples and goes deeper into the creative options opened up by the technique than you’ll probably ever need
Using a "textbook" example of WebSocket communication to compare Node and Bun.
Deno Cron, an easy way to create scheduled jobs.
The question that most front-end developers don’t know the answer to.
To prove it, we’re going to do something kinda crazy: build an app where every single component is written with a different framework.
In this blog, we’ll dive deep into the reasons why JSON can be a bottleneck in your applications and explore faster alternatives and optimization techniques to keep your apps running at their best.
The journey of programming with the GamePad API with detailed explanations and code samples to get JavaScript games ready to use controllers in the browser.
Since its inception, Tailwind CSS has become an extremely popular way to style web projects. In this article, we'll take a look at the architecture that powers it and explore what can be done to improve it.
WinterJS is a new JS Service Workers server powered by Rust & SpiderMonkey.
A list of one-liners you should know to up your knowledge of JavaScript.
On a daily basis, we have to fight really hard to convince not only the management level but also development teams that Frontend Architecture is as important as Backend Architecture.
As the frontend world grows, the architectural solutions for it should grow as well. The main idea behind micro frontends is to have an independent part of frontend applications which can be maintained by independent teams.
The advantages of implementing the plugin architecture and using it with Micro frontends.
A short video to guide you through the creation of a famous game Mario with some extras.
There's news on the URL validation front in JavaScript land! After all these years of cursing JavaScript for not having an easy way to validate a URL, there's a new method in town — URL.canParse()!
These are some of the most underrated features in JS. So, let's begin shall we?
Frontend developers can use AI functions such as translation and image generation on webpages with a new JavaScript library.
Grouping items in an array is one of those tasks you've likely tackled numerous times. Each time you might have either manually written a grouping function or reached for lodash’s groupBy function. The good news is that JavaScript is introducing grouping methods so you won’t have to do this anymore. Object.groupBy and Map.groupBy are new methods that will simplify the grouping process, save us time and reduce dependencies.
Slightly lower level, but a great way to train and deploy models in the browser or in Node.js. There are, of course, lots of demos, too.
State-of-the-art Machine Learning for the web. Run Transformers directly in your browser with no need for a server! Transformers.js is designed to be functionally equivalent to Hugging Face’s transformers python library, meaning you can run the same pre-trained models using a very similar API. These models support common tasks in different modalities.
An opinionated list of 10 outstanding testing articles, all with a JS slant to them. He also mentions his own list of JavaScript and Node.js Testing Best Practices which is worth revisiting too.
What a post! Mark, well known for his work on React, Redux, and much more, provides details of the painful experience and hard-earned lessons he gained while migrating the Redux packages to the ES modules.
High level thoughts about the React ‘bubble’ and some reasons to look beyond it, including a round up of some of the alternative options.
Talking of gaming, the annual js13kGames JS coding competition has just started. You can join in the fun, though, as it doesn't end till September 13.
Seven lesser-known JavaScript Web APIs that can be used to create innovative and advanced websites. It explores APIs such as the Web Speech API, Intersection Observer API, and the Web MIDI API, highlighting their capabilities and potential applications in web development.
Explanation of the distinctions between the null and undefined values in JavaScript. It covers their definitions, use cases, and differences in behavior, helping readers gain a clear understanding of how these concepts operate in JavaScript programming.
"JavaScript is a smelly language"! Hey, don’t hate the messenger, it’s Douglas Crockford, the cheeky creator of JSON and (former?) JavaScript evangelist who says so! Even though Douglas has spent decades working on JavaScript, he now believes it’s high time we all stopped using it.