Migrating a Node/NPM package to Deno
I migrated Shurley from Node/NPM to Deno, now publishing the package in both places.
tl;dr; You can see the main commit of the migration here. You can also see the whole repo and inspect at will.
I've wanted to write a package that's published in both NPM and Deno, but wanted to focus on the development and publishing process rather than the package itself, so migrating an existing package made a lot more sense.
Even though it didn't have any production dependencies already, the development dependencies still required security updates, which was annoying as it didn't affect anyone using the package. Anyway, it's a very simple package/function, so it seemed like the perfect candidate for my intentions.
It allows TypeScript by default, and it includes a formatter, linter, and test commands (the
devDependencies that I had installed)!
You can see it in the commit, I removed a lot of stuff. Mainly everything that enabled
I then added a new script,
build-npm.ts, which uses
dnt to generate the Node-compatible code for
Finally, I just added a
Makefile and tweaked the
README.md to make the development and publishing process easer.
I was really happy and surprised with how easy the process was, though arguably this was a very simple package to migrate.
You can find the package in Deno and in NPM now.
I hope you enjoy it.
Thank you so much for being here. I really appreciate you!