ctrlplusb / react-universally

A starter kit for universal react applications.
MIT License
1.7k stars 244 forks source link

Turn react-universally into a React Universal Framework #444

Open Vincz opened 7 years ago

Vincz commented 7 years ago

Hi guys !

I was wondering if we could find a way to use react-universally as a dependency.

The problem with starter kits (not especially this one) is that their is no "simple way" to keep them up to date. The "starter kit" dependencies are shared with the "application dependencies" and so is the build process, etc... I think we are all the same, and when a new version of whatever lib comes up with new features, we feel the need to upgrade. That is a real problem in the javascript world as everything is moving so fast. As I see plenty of motivated developers on this project, I was wondering if it couldn't be a smart move, to turn react-universally into a "react universal framework" rather than a "starter kit".

The main idea would be to allow people to use the framework as a dependency of their own project. They would just have to extend the default config in their own project (a little bit like the values) and be able to hook everywhere if the default behavior doesn't fit their needs. As for the features branches, they could be "framework" plugins (to add redux, relay or whatever).

Based on the current version of react-universally, I really don't think it would be too much work to do the transition. ATM, the only specific folder in the starter kit is the "shared/DemoApp", the rest is quite generic: The Webpack config is all about rules & loaders, the babel config is about plugins we want to use, etc... I would say that 90 / 95% of the content of the others folders is the same for everyone and every project.

I would like to know what you think about this idea.

ctrlplusb commented 7 years ago

Hey @Vincz!

Yeah, there have been lots of discussions on this concept, specifically with @bkniffler who has even managed to create a working prototype. :)

I am definitely open to the idea of having a dependency based system, however I have never quite felt that the project has been mature enough for it. I am trying to find the place where the project satisfies enough of my production project needs. Lately I have been trying to create some quite advanced setups (which include things like microservices) and have come up with some friction when using react-universally as a base. This made me spike out some new toolchain ideas - allowing for dependency based control of the development, build and deploy process. My experiments have been going really well thusfar and I am quite excited about it's prospects. I will keep you posted if you are interested in doing some beta testing with me.

Once a decent enough solution has matured we can look at either updating react-universally or maintaining a separate project built for purpose.

Vincz commented 7 years ago

@ctrlplusb Just let me know if their is anything I can do to help in some way about this :)

oyeanuj commented 7 years ago

@ctrlplusb keep us posted on the beta testing as well!

ctrlplusb commented 7 years ago

Will do 😊

sergiokopplin commented 7 years ago

Do you guys have something new on this one?

ctrlplusb commented 7 years ago

Hey @sergiokopplin

Yep, I have made a ton of progress, but it's still not quite where I need it to be. My conservative estimate is that I will have something within the next 1.5 months that could be opened up for some private beta testing. I would definitely value all of your input 👍

sergiokopplin commented 7 years ago

@ctrlplusb thanks for the quick response! Awesome work here! Glad to be part of.

fivethreeo commented 7 years ago

Any updates on this?

Vincz commented 7 years ago

@ctrlplusb Hey :) Have you make any progress ? I'm still whiling to help. I'll soon have a big project to start and I'd love to use the react universally frameworked version :)