esnextb.in
Prototype JavaScript apps in the browser with ES2015's latest features and importing modules directly from NPM.
How it works?
- The code gets transpiled by latest standalone version of Babel.js with
stage-0
,es2015
andreact
presets enabled - Browserify-CDN is responsible for importing npm modules and browserifying them on the fly
- Github Gists are used for saving and sharing code sketches
Under the hood it's pure client-side application which is hosted on GitHub pages and is built upon React.js.
Usage
Explore latest JavaScript features with the help of several useful npm modules and when you're ready just save the result and share the link with your team mates or community.
Guide
- ESNextbin interface consists of 2 main sections - "Editor" on the left side and "HTML Preview" on the right side
- There are 3 editor tabs - "Code" (for Javascript), "HTML" (for html layout) and "Package" (
package.json
that gets updated automatically when you're executing the code which imports library from npm). Switch editors to manage specific part of your program - Write program in "Code" tab and after you are ready hit
▶ Run Code
button to see the result - If you have HTML layout or you're manipulating the DOM in your code you'll see the result in "HTML Preview".
- But all logging, errors and warnings that appear in runtime could be seen ONLY in your browser's console (maybe it's necessary to add "Console" tab?)
Actions
menu provides:- saving your code as public and private gists which can be easily shared by copy/pasting link that contains gist id as query param, e.g.
https://esnextb.in?gist=<ID>
(please notice that these actions require GitHub account authorization) - "Enable/Disable Autorun" toggles autorunning feature (when it's enabled, the code will be executed after 1s every time when you stop typing without pressing
▶ Run Code
button) - "Clean session" resets all editors and unauthorizes your GitHub account (if it was connected)
- saving your code as public and private gists which can be easily shared by copy/pasting link that contains gist id as query param, e.g.
- "Editor" section uses default Ace shortcuts
- There are additional shorcuts as well:
Cmd/Ctrl + S
- hotkeys for save your code as public gist actionCmd/Ctrl + E
- hotkeys for▶ Run Code
buttonCtrl + Alt + F
- hotkeys forRun Prettier
button
Demos
There are several examples for you to play with:
- React Starter App
- Random Star Wars Names
- React Soundcloud Player
- Preact FRP
- Async/await Functions
- React + Redux
- Generators
- D3
- Vue 2.0 + Vuex
- Pixi.js Basic Example
- JSX to document.createElement
- Reactive view with Proxies and virtual-dom
- Unidirectional dataflow with Barracks and virtual-dom
Contributing
Please suggest what can be improved, report a bug or ask for a missed features while raising an issue.
Development
Clone this repo and run these commands inside it:
npm i
npm run dev
# visit http://localhost:9292/index-dev.html
References
Inspired by awesomeness of Babel.js REPL and Requirebin.
Support
MIT Licensed