Hello guys, hope you’re all doing well. I just would like you to let you know about a Blaze de-meteorization project I’ve been working on since March. It’s called Blast. It’s based on a previous project built by @znewsham where I simply renovated the code but kept the same principles and examples. I had hoped to finished it by October for Meteor Impact but the more I try to wrap it up the lengthier it got but I’m finally glad it’s complete.
It’s a little experiment to see how easy it’d be to port Meteor code to NPM. And since Blaze is one of the most Meteor-y part of Meteor, I think it shows how easy we can port other parts of Meteor. I think this opens the door to new interesting things.
This project is named Blast and not Blaze because when I was trying to kick start this project, I tried to modularize the packages and keep them separate as Meteor did so we can later use them separately in a non Meteor project but soon I found out that this was a bit hard to achieve since there are many packages already on NPM with the same name so to circumvent that I would prepend “standalone” to the package name like here or here but soon that proved to be nonoptimal as well. The names started to get long and weird and if we were to repeat “standalone” before every package name we would be better off having them under some sort of organization name. I tried every name close to Blaze like Blast, Burn, Flame …etc but all were taken in NPM until one worked - blastjs.
The main goal was to get things up and running as fast as possible so there’s still a huge room for improvement like converting the code to ES6, updating underlying packages and much more. But I didn’t want to get lost so I decided to showcase this project as soon as it’s ready. If it gains traction I might invest more into it. So please give it a try and tell me what you think.
You can clone the project and check the example applications.
A big shout-out to @znewsham. He played a critical role in this project. He provided the base code, constant guidance and mentoring.