General best practices for balancing developer velocity with containment, supervision, and least privilege.
Note
Product capabilities and preview status reflect publicly available guidance as of August 24, 2026.
Note
Scope
| import React from 'react' | |
| import { BrowserRouter as Router, Switch } from 'react-router-dom' | |
| import routes from './routes' | |
| import FancyRoute from './components/tools/FancyRoute' | |
| const App = props => | |
| <Router> | |
| <Switch> | |
| {routes.map((route, i) => | |
| <FancyRoute key={i} {...route} /> |
Intended for developers interested in getting started with Flow. At the end of this introduction, you should have a solid understanding of Flow and how to apply it when building an application.
Covers all the basics needed to get started with Flow.
Covers all the basic needed to get started with Flow and ReactJS.
A tiny (265 byte) utility to create state machine components using two pure functions.
The API is a single function that accepts 2 pure functions as arguments:
Not for everyone. Each programmer has their own appreciation of what is good coding music.
(From most influential to least)
Sparked from this twitter conversation when talking about doing fast async rendering of declarative UIs in Preact
These examples show how it's possible to starve the main event loop with microtasks (because the microtask queue is emptied at the end of every item in the event loop queue). Note that these are contrived examples, but can be reflective of situations where Promises are incorrectly expected to yield to the event loop "because they're async".
setTimeout-only.js is there to form a baselineThis guide assumes you have the emmet and language-babel packages already installed in Atom
keymap.cson file by clicking on Atom -> Keymap… in the menu bar'atom-text-editor[data-grammar~="jsx"]:not([mini])':This Gist presents a new design of class-based object construction in ES6 that does not require use of the two-phase @@create protocol.
One of the characteristics of this proposal is that subclass constructors must explicitly super invoke their superclass's constructor if they wish to use the base class' object allocation and initialization logic.
An alternative version of this design automatically invokes the base constructor in most situations.