esnextbin
v1.0.0-alpha.3
Published
Prototype JavaScript programs in the browser with ESNext (a.k.a ES2015) syntax and features, using modules from NPM.
Downloads
33
Maintainers
Readme
ESNextbin
Create browser programs with ES2015's latest features and use modules from NPM directly in your browser.
How it works?
- The code gets transpiled by Babel.js v6 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
▶ Execute
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.
http://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
▶ Execute
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▶ Execute
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:
yarn
yarn start-dev
# visit http://localhost:9292/index-dev.html
or
npm i
npm run start-dev
# visit http://localhost:9292/index-dev.html
References
Inspired by awesomeness of Babel.js REPL and Requirebin.
Support
We need your support to finish features that will bring the experience of prototyping Javascript apps to the next level:
- [ ] our own browserify server in order to replace https://wzrd.in (fixes #5)
- [ ] add console preview
- [ ] add support for embedding sketches (medium blogs, third-party websites etc.)
And whatever you can imagine! Just create an issue with your suggestions.
Backers
Support us with a monthly donation and help us continue our activities. [Become a backer]
Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]
License
BSD-2-Clause