var helpers = require('simulacra/helpers')
var bindEvents = helpers.bindEvents
var animate = helpers.animate
There is no practical difference. It is just for those who read code but lack reading comprehension skills.The "entire API surface area," as you put it, surely includes more functions than the only one you need for a landing page's hello-world. I don't evaluate something like Simulacra with a hello-world in mind, else I wouldn't need Simulacra.
My advice is to just change "one function" to "tiny API". Or maybe "just three functions in the public API". That's just as respectable and spares you from needing to split your API into a pointless "helpers" namespace.
const {bindObject, bindEvents, animate} = require('simulacra')
^ looks ideal to me.To demarcate this separation better I have considered moving the optional convenience functions into a separate module, which might help clear things up.
Edit: actually it seems that you were being dishonest when quoting me, this is what it says, you cut it off short:
>Its entire API surface area is a single function (with some optional helpers and symbols)
That makes it pretty clear that the core functionality is a single function.
It's 2017 and high time for JavaScript tooling to finally slow down a bit and settle into its bigger britches.
Facebook can come out with a project that's over 40k lines of code, and it is "extremely simple". But no, it is me with my little 5kb function who is the "astronaut-architect".
>It's 2017
I don't care what year it is, you act like the current frameworks are the only viable options in the future. Hint: they aren't.
I even see it in your landing page marketing.
Then I scroll down.