If I use React, will I still benefit from packages in a large-scale app?


#1

I’ve been immersed in React tutorials and docs all weekend, thanks to @SkinnyGeek1010. I’m really digging it!

I was thinking, though, since React is so modular and all about components, and you can control the order they’re loaded (by one component including/rendering another), would I still benefit from using Meteor packages to separate pieces of my SaaS into smaller bits? It seems like I can already do this thanks to React: (pardon the oversimplified example)

.
└── client
    ├── App.jsx
    ├── layout
    │   ├── Footer.jsx
    │   └── Header.jsx
    ├── main.html
    ├── main.jsx
    └── posts
        ├── Post.jsx
        └── PostList.jsx

Thoughts?


#2

Are you going to have a monolithic app or are you going to have a suite of apps? Do you want to be able to horizontally scale certain parts of your SaaS? What happens when you have traffic spikes or land a big contract? Will you just clone more copies of your entire app? Or do you want to clone just the part of the app that’s responsible for your API? Or clone just the part that’s responsible for the customer portal? Or just the worker processes? Or just the billing module during christmas holidays?

If you want to have a large SaaS where you can scale up certain parts of the app, based on traffic patterns, business opportunities, business contracts, etc, you’ll want to create packages that can be shared between apps.

If it’s just a single-page app service behind a paywall, and it all goes up/down together, then packages won’t be as necessary.


#3

It’s a single large-scale SaaS with a very specific purpose, and its components probably will not be shared or reused anywhere else, ever. But, even if I do decide “hey, this widget thing I made is pretty sweet, I wanna use it in my new project,” I could just copy FancyWidget.jsx to the new project easily enough.


#4

Just build. I hear too many people wondering and worrying about problems which they aren’t even really facing. While everyone was worrying if Meteor was ready for production and saying it couldn’t scale, we built a Meteor app and put it in production (hosted at meteor.com) using meteor version 0.6.0 and processed nearly a $1M in revenue the first year.

There is usually always some kind of way to deal with issues as they arise, so why waste time daydreaming about academic problems when you could be building a business? Maybe there will be new features and new types of packages to deal with these problems by the time you are that big anyway.


#5

Which website was this? (and congrats) :smile:


#6

White Rabbit Express