Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The hoops you have to jump through, to fail at the end #332

Closed
HZSamir opened this issue Nov 21, 2017 · 6 comments
Closed

The hoops you have to jump through, to fail at the end #332

HZSamir opened this issue Nov 21, 2017 · 6 comments

Comments

@HZSamir
Copy link

HZSamir commented Nov 21, 2017

Now this is as much an issue as rant as the amount of problems this library raises is insane, so please bear with me:

Some the issues I encountered when using it:

  • an old version react-native-gesture-handler that is unable to resolve module react-native/Libraries/Renderer/shims/ReactNativeBridgeEventPlugin, forcing me to fiddle with the peerDeps to fix it
  • a react-native-linear-gradient error that forces me to upgrade most of my deps and more importantly react-native, even though this could break the rest of the project (as a rule of thumb, I do not risk upgrading it once I've started a project with a specific version, unless I absolutely have to)
  • cannot read property 'shape' which can only be fixed by installing additional deps prop-types create-react-class and fiddling with node_modules/react/index.js
  • And finally the font rendering that has been broken for as long as I can remember, can be fixed by downloading Rubik fonts from google and overwriting those in the build folder

And all this while keeping in mind that you have to redo all those steps every time you update, add a dep, or clone the project anew, which is a huge waste of time.

And finally comes the time to build the app: You're thinking "Oof! That took the entire day, but hey, at least the app looks beautiful" and lo and behold, the released apk is completely broken and crashes at startup, possibly because of proguard, but so far I haven't been able to pinpoint the exact cause.

Is this the way Shoutem has to gently steer us towards expo? Because if that's the case I believe you could simply add at the top of the readme: "Does NOT work outside of expo; use at your own risk" then we'd know not to waste our time

I've been following Shoutem for a long time now, and been meaning to use it ever since, but the ridiculous amount of issues that it brings with him just don't make it worth it, at this point something like Native-base or KittenUI, although less beautiful in my opinion, are way better as they come without the headache and the hours of debugging

Please do not take offence at this issue: I understand fully that this is one of the drawbacks of open-source projects and that the contributors are in no way obligated to fix these issues, but I believe a bare minimum of explanation about what this lib can and can't do, and what to expect of it in different environments would go a long way.

tl;dr: Shoutem hardly works outside of expo, please update the readme to clarify this point.

Thank you.

@shahzeb1
Copy link

I just used create react native app to create a fresh react native project. I ran into similar issues. There isn't even a $ react-native link command available anymore. I don't think Shoutem UI will work with the newest react version.

Not sure how to go about trying to solve this.

@agonbina
Copy link

agonbina commented Nov 28, 2017

@Unforgiven-wanda you are absolutely spot on. Too many OS projects make claims which are not even true just to increase their popularity. And the fact that most of us in the community have the mentality of "it is just an OS project so you can't expect the contributors to maintain it properly" has led to the community not holding contributors accountable to what they claim their project does.

I have nothing against releasing half assed OS projects as long as this is clearly stated in the readme, such that developers who are actively spending time on selecting an OS project to add to their development stack can look elsewhere.

p.s. I am glad I noticed this issue before going through the same hoops to try to get it to work with the latest version of react and react-native.

@Definitely-Not-Vlad
Copy link
Collaborator

We appreciate the criticism.

TL;DR:
The Shoutem UI toolkit was made as a love child of our main product, the Shoutem App Builder and the Extension Architecture. We updated it to RN 0.50.3 with version 0.22.0 which is now available.

Not TL;DR:
Shoutem's main product, the Shoutem App Builder is based on React Native, for this purpose, the devs behind it put in time and care into making a UI toolkit to allow them to more efficiently create gorgeous apps.

Unfortunately, as the App Builder advanced later into it's lifespan, it absorbed more and more developer time, leaving little to no time for the developers behind the UI toolkit to dedicate to maintenance, fixes and improvements.

We've now revitalized our efforts to bring the UI toolkit back up to snuff. A result of that is immediately visible from the version 0.22.0 update which makes it operational with React Native 0.50.3.

The next thing I will personally look to do is cleaning up the documentation. Introducing undocumented components to it, improving existing component code snippets as well as fixing any inaccuracies that may exist.

Again, we appreciate the criticism.

@HZSamir
Copy link
Author

HZSamir commented Dec 11, 2017

Thank you for your answer @Vladimir-Vdovic
Please do keep us informed

@arrygoo
Copy link

arrygoo commented Dec 16, 2017

I was about to start using this package but this issue made me feel scared a bit. I hope that it returns to being a well-maintained package :).

@Definitely-Not-Vlad
Copy link
Collaborator

I'm going to close this issue, since the issues described in it are resolved (from my understanding). Feel free to keep discussing in the issue.

Short update:
Working on a fix for font rendering on Android, should be released today.
I'm also looking into an issue on Expo v24.0.0 that was reported.
Still working on the documentation I mentioned earlier in this thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants