Axios is a simple promise based HTTP client for the browser and node.js. Axios provides a simple to use library in a small package with a very extensible interface.
JavaScript library for reorderable drag-and-drop lists
Uppy fetches files locally and from remote places like Dropbox or Instagram. With its seamless integration, reliability and ease of use,
Uppy is truly your best friend in file uploading.
Tiny (2 KB) turboboosted JavaScript library for creating user interfaces. - redom/redom
<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="yuanchuan" data-slug-hash="YoqWeR" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="Matrix digital rain (animated version)">
<span>See the Pen <a href="https://codepen.io/yuanchuan/pen/YoqWeR/">
Matrix digital rain (animated version)</a> by yuanchuan (<a href="https://codepen.io/yuanchuan">@yuanchuan</a>)
on <a href="https://codepen.io">CodePen</a>.</span>
</p>
dygraphs is a fast, flexible open source JavaScript charting library.
It allows users to explore and interpret dense data sets.
The chart is interactive:
Features:
React components to create parallax scroll effects for banners, images or any other DOM elements. Uses a single scroll listener to add vertical or horizontal scrolling based offsets to elements based on their position in the viewport. Optimized to reduce jank on scroll and works with universal (server-side rendered) React apps.
You've been looking for a more sophisticated templating engine for JavaScript. Here it is.
A local development server that aims to make writing modular client-side apps with NPM + browserify fast and fun.
PrimeReact is a collection of rich UI components for React. PrimeReact is a sibling of the popular PrimeNG (Angular) and PrimeFaces (JSF) components suites.
The file uploader that is always happy to see you.
Sleek, modular file uploader that integrates seamlessly with any website or app. It fetches files from local disk, Google Drive, Dropbox, Instagram, remote URLs, cameras etc, and then uploads them to the final destination. It’s fast, easy to use and let's you worry about more important problems than building a file uploader.
JavaScript SQL database for browser and Node.js.
Handles both traditional relational tables and nested JSON data (NoSQL).
Export, store, and import data from localStorage, IndexedDB, or Excel.
This is a full-featured CSV parsing tool running entirely on your brower. No data leave your computer ! Use it also to learn how to use our packages and to test the various options interactively.
Anime.js is a lightweight JavaScript animation library with a simple, yet powerful API.
It works with CSS properties, SVG, DOM attributes and JavaScript Objects.
Passport is authentication middleware for Node.js. Extremely flexible and modular, Passport can be unobtrusively dropped in to any Express-based web application. A comprehensive set of strategies support authentication using a username and password, Facebook, Twitter, and more.
Bull is a Node library that implements a fast and robust queue system based on redis.
Although it is possible to implement queues directly using Redis commands, this library provides an API that takes care of all the low-level details and enriches Redis basic functionality so that more complex use-cases can be handled easily.
If you are new to queues you may wonder why they are needed after all. Queues can solve many different problems in an elegant way, from smoothing out processing peaks to creating robust communication channels between microservices or offloading heavy work from one server to many smaller workers, etc.
HTTP assertions made easy via superagent.
The motivation with this module is to provide a high-level abstraction for testing HTTP, while still allowing you to drop down to the lower-level API provided by superagent.
Moment-iterator is a moment-js addons, to iterate through date range, or create date range.
Day.js is a minimalist JavaScript library that parses, validates, manipulates, and displays dates and times for modern browsers with a largely Moment.js-compatible API. If you use Moment.js, you already know how to use Day.js.
Dunno why I bookmark this shit, maybe because someday I could need it.
react-developer-roadmap - Roadmap to becoming a React developer in 2018
Math.js is an extensive math library for JavaScript and Node.js. It features a flexible expression parser with support for symbolic computation, comes with a large set of built-in functions and constants, and offers an integrated solution to work with different data types like numbers, big numbers, complex numbers, fractions, units, and matrices. Powerful and easy to use.
Beautifully simple routing for React JavaScript projects. Lightweight and works well both on the browser and server.
components based on reactjs http://ant.design
CodeSandbox is an online editor that helps you create web applications, from prototype to deployment.
Think of it like you're just calling JavaScript functions. You can't put a for
loop inside a function call:
return tbody(
for (var i = 0; i < numrows; i++) {
ObjectRow()
}
)
But you can make an array, and then pass that in:
var rows = [];
for (var i = 0; i < numrows; i++) {
rows.push(ObjectRow());
}
return tbody(rows);
You can use basically the same structure when working with JSX:
var rows = [];
for (var i = 0; i < numrows; i++) {
// note: we add a key prop here to allow react to uniquely identify each
// element in this array. see: https://reactjs.org/docs/lists-and-keys.html
rows.push(<ObjectRow key={i} />);
}
return <tbody>{rows}</tbody>;
Incidentally, my JavaScript example is almost exactly what that example of JSX transforms into. Play around with Babel REPL to get a feel for how JSX works.
I work on a lot of Javascript projects. The fashion in Javascript is to use build tools like Gulp or Webpack that are written and configured in Javascript. I want to talk about the merits of Make (specifically GNU Make).
Make is a general-purpose build tool that has been improved upon and refined continuously since its introduction over forty years ago. Make is great at expressing build steps concisely and is not specific to Javascript projects. It is very good at incremental builds, which can save a lot of time when you rebuild after changing one or two files in a large project.
Make has been around long enough to have solved problems that newer build tools are only now discovering for themselves.
Despite the title of this post, Make is still widely used. But I think that it is underrepresented in Javascript development. You are more likely to see a Makefile in a C or C++ project, for example.
My guess is that a large portion of the Javascript community did not come from a background of Unix programming, and never had a good opportunity to learn what Make is capable of.
I want to provide a quick primer here; I will go over the contents of the Makefile that I use with my own Javascript projects.
This guide is intended to catch you up with the most important reasoning, terms, tools, and approaches to JavaScript testing in 2018.
Generate massive amounts of fake data in the browser and node.js
Instead of implementing XMLHttpRequest in Node.js to run browser-specific Fetch polyfill, why not go from native http to fetch API directly? Hence node-fetch, minimal code for a window.fetch compatible API on Node.js runtime.
See Matt Andrews' isomorphic-fetch or Leonardo Quixada's cross-fetch for isomorphic usage (exports node-fetch for server-side, whatwg-fetch for client-side).
SuperAgent is light-weight progressive ajax API crafted for flexibility, readability, and a low learning curve after being frustrated with many of the existing request APIs. It also works with Node.js!
Aggregation is a very small JavaScript library for Node.js environments, providing just a single function, for use in ECMAScript 5/6 class inheritance based on mixins. It aggregates a base class and one or more mixin classes into an aggregate class, which then is usually subsequently used as the base class for another class.
mics (pronounce: mix) is a library that makes multiple inheritance in Javascript a breeze. Inspired by the excellent blog post “Real” Mixins with Javascript Classes by Justin Fagnani, mics tries to build a minimal library around the concept of using class expressions (factories) as mixins. mics extends the concepts presented in the blog post by making the mixins first-class citizens that can be directly used to instantiate objects and can be mixed in with other mixins instead of just with classes.
The truth is, ternaries are usually much simpler than if statements. People believe the reverse for two reasons:
Before we get into the details, let’s define a ternary expression:
A ternary expression is a conditional expression that evaluates to a value. It consists of a conditional, a truthy clause (the value to produce if the conditional evaluates to a truthy value), and a falsy clause (the value to produce if the conditional evaluates to a falsy value).
npm install -g
won't finish installs on WSL Ubuntu. What I did to fix this issue:
Extension for Visual Studio Code - Sublime Text's babel-sublime grammar in VS Code.
npm install legally -g # Make it work everywhere
legally # Check licenses of current directory
legally express # Check an npm library's licenses
One of the biggest obstacles for adoption of Angular in the enterprise is technical, but not of the nature that one could expect.
It's hard to convince our boss to use Angular in our next project if we can't even install it in our own PC ;-) ! We would probably want to do an early demo or prototype to get things started.
But many companies have corporate proxies and security policies that make tools like npm hard to try out for the first time.
One of the biggest features of AngularJs is that it does not come necessarily with all the tooling ecosystem, and can be used via simple script tags. Angular 2 and beyond in principle can also, but we really want to use it together with Typescript, the Angular CLI, Webpack and all the tooling ecosystem.
The (many) reasons why you could not have JS.
How much library code do you really need — 50K? 100K? 150K? More? How much of that do you really use?
Sure, we all love our favorite monolithic frameworks, and sometimes we even use them fully. But how often do we reach for the ride-on John Deere tractor with air conditioning and six-speaker sound system, when a judiciously applied pocketknife would do the trick better, faster, slicker?
Micro-frameworks are definitely the pocketknives of the JavaScript library world: short, sweet, to the point. And at 5k and under, micro-frameworks are very very portable. A micro-framework does one thing and one thing only — and does it well. No cruft, no featuritis, no feature creep, no excess anywhere.
Microjs.com helps you discover the most compact-but-powerful microframeworks, and makes it easy for you to pick one that’ll work for you.
Flatris is a mobile-friendly implementation of Tetris, built using React & Redux.
Use the arrow keys or buttons below to play.
The game state is preserved between visits, so you can safely kill this tab when your employer is approaching and resume afterwards–including offline!
Check out the source code when you're done playing.
Built by @skidding.
Preact provides the thinnest possible Virtual DOM abstraction on top of the DOM. The web is a stable platform, it's time we stopped reimplementing it in the name of safety.
Preact is also a first-class citizen of the web platform. It diffs Virtual DOM against the DOM itself, registers real event handlers, and plays nicely with other libraries.
Most UI frameworks are large enough to be the majority of an app's JavaScript size. Preact is different: it's small enough that your code is the largest part of your application.
That means less JavaScript to download, parse and execute - leaving more time for your code, so you can build an experience you define without fighting to keep a framework under control.
Preact is fast, and not just because of its size. It's one of the fastest Virtual DOM libraries out there, thanks to a simple and predictable diff implementation.
It even includes extra performance features like customizable update batching, optional async rendering, DOM recycling, and optimized event handling via Linked State.
Preact's tiny footprint means you can take the powerful Virtual DOM Component paradigm to new places it couldn't otherwise go.
Use Preact to build parts of an app without complex integration. Embed Preact into a widget and apply the same tools and techniques that you would to build a full app.
Lightweight is a lot more fun when you don't have to sacrifice productivity to get there. Preact gets you productive right away. It even has a few bonus features:
Virtual DOM Components make it easy to share reusable things - everything from buttons to data providers. Preact's design means you can seamlessly use thousands of Components available in the React ecosystem.
Adding a simple preact-compat alias to your bundler provides a compatibility layer that enables even the most complex React components to be used in your application.
The built-in js-mode in Emacs does not provide many features for working with js framework beside js editing and syntax highlighting. The tips in this post will help you transform your Emacs into a powerful Javascript IDE.
A free, once–weekly e-mail round-up of JavaScript news and articles.
Middleware is a function that receives the request and response objects of an HTTP request/response cycle. It may modify (transform) these objects before passing them to the next middleware function in the chain. It may decide to write to the response; it may also end the response without continuing the chain.
In other frameworks “middleware” is called “filters”, but the concept is the same: a request, response, and some transformation functions.
No JavaScript frameworks were created during the writing of this article.
The following is inspired by the article “It’s the future” from Circle CI. You can read the original here. This piece is just an opinion, and like any JavaScript framework, it shouldn’t be taken too seriously.
The ecosystem of JavaScript has grown. Long gone are the days of simply inserting jQuery into your website and fading stuff in or out.
Entering the world of JavaScript today is an overwhelming task with lots of possibilities. It also means that it’s a world that’s brimming with opportunity. In the words of Jeff Atwood (http://blog.codinghorror.com/the-principle-of-least-power/):
Any application that can be written in JavaScript, will eventually be written in JavaScript.
Gulp est un "Automatiseur de tâches", un task runner comme disent nos amis anglophones, c'est à dire qu'il est capable de lancer des bouts de scripts à votre place tout seul comme un grand.
Ces tâches dépendent de votre bon vouloir et peuvent être très variées :