JavaScript Icon


JavaScript is an object-oriented programming language used alongside HTML and CSS to give functionality to web pages.
512 Stories
All Topics


UmiJS – a pluggable, enterprise-level React app framework

Umi is based on routing, supports next.js-like conventional routing, and various advanced routing functions, such as routing-level on-demand loading. Then with a complete plugin system, covering every life cycle from source code to build product, umi is able to support various functional extensions and business needs, currently umi have almost 50+ plugins in both community and inside company.



Getting rid of node_modules

The Yarn team is brewing up a new way to resolve dependencies: this RFC a new alternative and entirely optional way to resolve dependencies installed on the disk, in order to solve issues caused by the incomplete knowledge Node has regarding the dependency tree. We also detail the actual implementation we went with, describing the rational behind the design choice we made. Pretty exciting if/when they pull it off. The wins: Installs ran using Plug'n'Play are up to 70% faster than regular ones (sample app) Starting from this PR, Yarn will now be on the path to make yarn install a no-op on CI Yarn will now be able to tell you precisely when you forgot to list packages in your dependencies Your applications will boot faster through a hybrid approach of static resolutions



You probably don't need Moment.js

When you pull in a library dependency, it is rare that you need all of the functionality it offers. This isn't usually a problem for backends, because that code never leaves the server. However, In frontend-land your users pay the price for all that unused functionality every time they hit your website with a cold cache. Moment.js is an excellent date/time library. It is packed with functionality, and you probably don't need everything it has to offer. Instead, check out date-fns, which offers small, highly targeted functions you can probably get by with. There's even an ESLint plugin that will help you identify places in your codebase where you don't really need Moment.js!


Apoorv Saxena

Asynchronously resolve subscribed decisions in a pub/sub architecture (pure JS)

AsyncResolver.js implements a PubSub architecture where subscribers of events are decision makers (return promise when they receive an event) and after publishing an event, publisher gets the decision of the subscribers. Supports both Node and browser. The README has more details on when this might be useful to you.


Henry Zhu

Babel 7 released

After almost 2 years, 4k commits, over 50 pre-releases, and a lot of help we are excited to announce the release of Babel 7. It's been almost 3 years since the release of Babel 6! There's a lot of moving parts so please bear with us in the first weeks of release. Babel's role in the JavaScript ecosystem... Babel is fundamental to JavaScript development today. There are currently over 1.3 million dependent repos on GitHub, 17 million downloads on npm per month, and hundreds of users including many major frameworks (React, Vue, Ember, Polymer), and companies (Facebook, Netflix, Airbnb). It has become such a foundation for JavaScript development that many people don't even know that it is being used. Even if you aren't using it yourself, it's highly likely your dependencies are using Babel.


Evan You Medium

Vue CLI 3.0 is here!

Good news — the next generation of Vue CLI, the standard build toolchain for Vue applications, is here. Evan You writes: Vue CLI 3 is a completely different beast from its previous version. The goal of the rewrite is two-fold: Reduce configuration fatigue of modern frontend tooling, especially when mixing multiple tools together; Incorporate best practices in the toolchain as much as possible so it becomes the default for any Vue app. This means that any Vue CLI 3 project comes with out-of-the-box support most of today's preferred ways to build and ship applications.



How far can JavaScript take us?

Tanner Villarete asked himself, "How far can JavaScript take us?" Then answered: Turns out, pretty dang far. This web app was my attempt at mimicking Apple's iOS music app, and I think I've come pretty close! I have to admit, he did a pretty good job. The frontend is built on React and Redux. The backend? A Laravel-based API running on a Raspberry Pi! Here's the live demo, but be nice because Raspberry Pi.


Steve Klabnik

Is WebAssembly the return of Java Applets & Flash?

A lot of people wanted Steve Klabnik to elaborate on this from a recent post on WebAssembly... Some have compared WebAssembly to Java applets; in some ways, they’re very right, but in some ways, they’re very wrong. Eventually I’ll write a post about the wrong, but for now, the right: in some sense, WebAssembly is a different way of accomplishing what the JVM set out to do: it’s a common virtual machine that can be used to build very cross-platform software. Here's a great take away if all you want is a tldr... Java Applets and Flash were security nightmares. WebAssembly, on the other hand, piggybacks on the JavaScript VM. All of the effort going into creating its sandbox also applies to Wasm.


Rajoshi Ghosh

Instant GraphQL on Postgres

Get instant GraphQL APIs on any PostgreSQL database. We are super thrilled to announce the launch of the Hasura GraphQL Engine, an open source product that gives you instant GraphQL APIs on Postgres. You can try it out here — it will take exactly 30 seconds to deploy to Heroku’s free tier (yes — we counted 😀). Check out the open source repo on GitHub.


Robin Wieruch

JavaScript fundamentals before learning React

Learn about the fundamentals of JavaScript to ease your learning/usage of React. After all my teachings about React, be it online for a larger audience or on-site for companies transitioning to web development and React, I always come to the conclusion that React is all about JavaScript. The following walkthrough is my attempt giving you an almost extensive yet concise list about all the different JavaScript functionalities to complement your React application.


Benjamin Bouvier

Making calls to WebAssembly blazingly fast

Benjamin Bouvier, Compiler Engineer at Mozilla, writes about speeding up calls from JS to Wasm in Firefox. If we want more WebAssembly (wasm) adoption, there shouldn't be a big costly barrier between the two universes. That is, calls from one world to the other should be fast. For a very long time, calls from JS to asm.js/WebAssembly have been quite slow in Firefox. In fact, we didn't optimize them at all. He goes on to say... Starting with Firefox 60, the JIT compiler makes no distinctions between calling a JavaScript function or a WebAssembly function, meaning it uses the same call optimizations for both kinds of function. Benjamin continues through several more bugs mentioned on the Bugzilla bug board with fixes to speed up calls from JS to Wasm in Firefox.


Ives van Hoorne Medium

CodeSandbox launched their dashboard and teams feature

I've been closely watching CodeSandbox and have been thoroughly impressed with the work Ives van Hoorne and the 75+ contributors have put into this online code editor for ... React, Preact, Vue, and more. I've been thinking about getting Ives on Founders Talk to talk about the business model behind CodeSandbox. It seems to have this interesting self baked, pay what you want, Patron model to cover the expenses of CodeSandbox. Most of the features are free with limits, and being a "Patron" lifts those limits + extra features, and supports the costs and development efforts.


Flavio Copes

The Vue Handbook

A free ebook by Flavio Copes. Here's the skinny: After spending a lot of time diving into Vue, in preparation for a Vue online course I'm building, I created this free resource that contains a lot of material to help anyone go from zero Vue knowledge to having a pretty good overview of this popular JavaScript frontend framework. The book's content is behind a newsletter signup. That's the price of free, I guess. 🤷‍♂️

0:00 / 0:00