Skip to content

Instantly share code, notes, and snippets.

@creationix creationix/ Secret
Created Apr 23, 2015

What would you like to do?


Building a More Flexible Node.JS


Node.JS gives you an easy to use scripting language with the power of non-blocking I/O and systems level APIs. But it's core is very prescriptive about using callbacks, streams, and event emitters.

Have you ever wished you could use the core power of node without buying into the conventions?

This talk will explain what we've learned over the past from the node.js and projects and how these lessons can be applied to build a better platform using a simple recipe:

  • Raw direct libuv bindings to the VM of choice (V8, SpiderMonkey, JavaScript Core, Duktape, Luajit, etc)
  • C layer with zip asset bundling, openssl, vm, and libuv bindings.
  • Set of individual pure script libraries to implement core APIs.
  • Package Manager to make working with many packages a breeze. (could be git submodule based)

The luvit project (node in lua) recently was rewritten with this new structure. This talk will show how this new way of splitting the project into layers makes it easier to work with and encourages more core contributions as well as customized forks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.