First working draft (v0.0.0, already on npm)