I’m also looking at it from business side, we’ve built a large set of internal of reusable components, and dropped down the cost of starting new projects through heavy reuse. New devs don’t need to write tons of html, just pick logo bricks and assemble the UI.
I have boiler drop-in components that I use in blaze. You can import them the same way. I haven’t switched to React yet, as I still haven’t seen the benefit on my end. Is there a difference in reuse of components with Blaze/React?
I can speak from my personal experience which might not be applicable to everyone.
I started with Blaze because it was super easy to get into. But as my code base got bigger I found myself wiring a lot of repetitive HTML code, so I decided to do heavy refactoring to abstract and create reusable components. At the same time react was getting popular and provided a clear APIs on how to create components and manage their life cycle, it was solving the issue I was facing so I decided it’s better to switch.
I’ve not used Blaze components so I can’t comment on those but for me I see two clear benefits with react:
Clear API with props and lifecycle management methods and stage management
Tons of reusable components on npmjs
And since I was early on my project I thought the two points above are sufficient to justify the switch. However if you’ve a working project with all the components you need, that Blaze will surely do the job as well, I’m not a fan of switching tech and chasing hype, we need to deliver value and ship products to end users and customers, but for me, React was clearly solving a problem I was facing when attempting to scale my front-end code.
It would be great if this thread didn’t devolve into a “Blaze vs React” debate. It has clearly been stated throughout the thread there are appropriate use cases for each.
The logical structure of most front-end renderers is the same. You can literally transpose a Blaze template to a React component. This was the biggest reason I didn’t take the “hype” bait of either one.
Cool. I hope we can all be positive. I can see where Vue is good, React is good etc. We can all work together. For myself in my mind, I can literally develop the same application logic in any of the Front-end renderers. But too often in projects it’s about hype and opinion (my experience in several Meteor projects).
Stay tuned for my next post: “Why I Believe in Big Foot”
I think with create-react-app and auth serviecs (like aws’s or oauth, which I think expo uses) there are other options for MVPs. But, in the end, it’s still hard to beat a good meteor developer using meteor to build and MVP.
For me the big boost is the huge set of NPM libs you can use and more answers to your questions (stack overflow, github issues, etc). Also it’s easier to find solid react devs than blaze devs. Also having X years experience working with react is way more valuable to an employer than having X years in blaze. Only knowing blaze isn’t a non-starter, it’s just all else being equal, building experience in react is more marketable.
I saw someone else mention npm. I don’t understand. Before react was on the scene, I can easily use npm modules for whatever I needed. If not, I would write it myself.
Most of my projects, the html is already done. I can easily drop that into a Meteor project and wire it up super fast. I tried with React and splitting up the css for each component just takes too long.
I do agree that React is more marketable though. I don’t ever think I saw a job specifying Blaze. But if you are full stack and have control of the project, I would choose Blaze for timing.
I have decided that react meteor is good combination, because react is main stream, also it builds of oop ,if metoer doesn’t fit your needs you can use another web stack and u can use react with it.meteor for realtime , mobile apps.
Other apps for rdbms
I’ve heard this several times before, that Blaze has “no SSR support.” It doesn’t natively, but it’s super easy with the SSR package. This is how we send all our automated emails. But by the way people talk, it sounds like I’m the only one who has ever known this.