Why not React Native ?
Considering that there are already a lot of JS contributors for the UI of the appstore (and in general), maybe React Native will allow them to also help with the mobile store.
Not to mention reutilising code parts for the iOS effort.
The store is in vue because it needs to be a webpage. There is a store API written in Python and Go for the mobile counterparts (Android at the moment).
Having a native Android app in Java will help integrating with other services eg: GadgetBridge.
React Native can make use of native code and the rendered UI will be native platform widgets.
Not trying to convince anybody here, just providing info that might help Rebble move forward faster. 😃
Mmmm @qichuan what do you think? This could mean more people can contribute
I think react-native is good choice to uses as an some part of view like appstore.
If use the react-native for appstoreview then It will be updated easily both android and ios.
But other views made by native android, ios will be better.
Sorry for my english. I'm trying to learn english.
@ShawnBaek the problem is that maybe we need Java language in order to communicate with GadgetBridge and other services.
React Native would allow the use of Java. On iOS and Android you can bridge out native functionality to the JS runtime for use within React code.
Though performance will get a big hit. It is much harder to write a slow Java app than RNative app. Neither do I think web devs should necessarily be doing app dev.
I have tried and used React Native in other projects, and I would suggest to stay in Native Android development for this project, Debugging a native application in various vendor modified Android firmwares itself is already a challenge, adding another technical layer only makes it even more difficult.
+1 for native (java) development... My reason is simple. My UX was horrible with old original store app. I would like to have app with more performance and less WTF moments :-)
@qichuan I'm an iOS developer. I have a question. Is there a GadjetBridge for swift/objective-c?
@ShawnBaek https://github.com/CTKRocks/rebble-ios
At the time I was looking for a project to learn one of React Native or NativeScript. Now, I have almost one year experience with NativeScript and even though I had some bumps while developing my first app, I will not write a native app again.
Regarding performance: NativeScipt executes very close to native performance but anyway we are talking here about an app store, not a 60fps game. I'm sure that any performance penalty that NativeScript introduces, is neglijabile in this kind of applications.
Why should you choose it ? It will be much easier to find JS devs than it will be to find Java AND Swift devs.
Also, NativeScript allows you to call any Java/Objective-C API directly.
NativeScipt executes very close to native performance but anyway we are talking here about an app store
An app store should be smooth too, though in the end bad code is bad, doesn't matter what language it is written in. NativeScript might also have native performance but it doesn't have a native look, which is worse I think. And I've yet to see something written in those languages/dialects and actually be nice to use but I've seen native apps that are really nice to use and that work really fast and smooth.
It will be much easier to find JS devs than it will be to find Java AND Swift devs.
[citation needed] and who says they have to be developed by the same people?
I know Java and Kotlin, but this is @qichuan 's choice since he developed most of the app. if all the components work (and we can interact with GB), the app is fluid and looks native (with Google's material design components, round icons, new Android APIs...) then I'm down.
@qichuan @KonradIT Sorry for the topic shift, but would be starting to use Kotlin acceptable, as PRs maybe? :D
Fine by me, I know Kotlin and it's interoperable with Java.