Open larixer opened 7 years ago
Feature request: I18n
localization (translation) support
@mairh Yes, i18n
is a good one. Will add this feature to the list. We have experience with this on our project where we use this starter kit, so we can relatively quickly transfer code for basic i18n support here via react-intl
, but there will be more work involved to add i18n
into Posts and Comments and Counter example...
@vlasenko did you guys manage to get react-navigation running together with expo?
@zunder Alex, we haven't tried yet. Are there any problems with adding react-navigation
?
@vlasenko Yes, after fiddling around with different versions of expo, react-native and react-navigation, I finally got it to work. Only thing left is a warning: Possible Unhandled Promise Rejection (id: 0):
, which I am having difficulties to track down.
I have slight suspicion that it has something to do with AppRegistry, but nothing sure yet. I am not 100% sticking to this kit though as I am using an additional typescript loader. I doubt it being a reason for that warning though.
Anyway, my hopes where that I could find an example of using the react-navigation as this kit is the closest getting to my use case. Guess I have to wait a little more.
@zunder Lets discuss in the chat: https://gitter.im/sysgears/apollo-fullstack-starter-kit
How do you feel about Nativebase @vlasenko ?
@justinr1234 Currently I am in the process of making post example work in React Native. When this is done, I intend to evaluate UI components that might be useful for this kit. Nativebase looks promising.
If others agree we can add it to the Roadmap.
@mitjade I actually already integrated it if you'd like me to PR. I'd need to do some work to get the examples updated (as you're doing). The hard part was making sure to integrate the proper versions and settings of everything for Expo. Had an issue with loading the proper font files for icons and whatnot.
Having a PR for this would for sure be useful if anyone else is interested in this.
If we then merge it, @vlasenko and @mairh need to add their opinions here if this is the direction we want to go. The problem is that there are many UI components out there and there will always be different preferences what to use. Currently we try to pick the most popular one. I personally use AntD for web.
@vlasenko is in the process of making this kit more generic by splitting certain parts into separate packages. I guess this is one of the areas that apply here as well. Problem then arrises on how to maintain all different variations.
@justinr1234 I agree with everything Mitja told above. Pull Request for supporting NativeBase would be nice to have. I propose to keep solutions to override framework choices in Pull Requests and let people use them as a guide
Nativebase is nice to have. Since our philosophy is to get the full working app ready quickly from ground-up with lots of features rather a mere skeleton boilerplate. I guess Nativebase will help us in that direction.
Another option is to integrate Shoutem UI. Although, both nativebase
and shoutem
are more or less the same. I personally believe the default UI (no customization + theme) is better in the case of shoutem
and looks pretty nice. Moreover, integrating themes are much easier (only one place to modify) in case of shoutem
.
Feature Request: login/registration
@seanscal This feature is already in the list: "Authentication and authorization example"
ah jeez didnt see that, awesome!
@vlasenko Re: UI packages. I was contemplating the ability to swap between UI packages via the app.json
. Something like:
{
...
ui: {
web: 'react-native-web',
ios: 'native-base',
android: 'native-base'
}
}
Where then you could use something that happens via webpack to dynamically include/exclude a specific version of something like button.js
dependent on the UI you're wanting to use. That way we're not bundling multiple UI packages into the resulting output, but can still configure what UI you want to use for the kit via the app.json
. Would need to flesh out technical details more fully, but I could see it being pretty cool rather than doing something more confusing by having multiple repos or forks that have to be kept in sync and will (I believe) inevitably drift.
@justinr1234 Technical support of this stuff will be implemented in:
https://github.com/sysgears/spin.js
In spin.js
you specify your stack for each platform and all the build rules are generated on the fly for the stack you have chosen. Check out this Pull Request:
https://github.com/sysgears/apollo-universal-starter-kit/pull/314
@zunder @mairh @mitjade Build infrastructure has been moved out into separate npm module: spin.js. This opens way for radical customization of this starter kit, including TypeScript support and multiple UI support. One will only need to write spin.js
plugin like this: https://github.com/sysgears/spin.js/blob/master/src/plugins/StyledComponentsPlugin.ts
and add example code to the kit
@vlasenko Looks powerful, but to be honest it's kind of confusing at first glance. Do you plan to add some more hand holding to the examples?
@justinr1234 Yes, sure. I plan to add more thorough documentation
@vlasenko Fantastic! Will try and play with this today.
@vlasenko What do you think about file upload feature in the kit? Doing file upload using graphql mutations could be a good addition we can offer in the kit. We could just simply start with blob in the image folder. Later we can integrate cloudinary / S3 or some other services to store and host the images. Usually, if someone have auth feature in the app most of the time apps also provide user image upload or image upload in chats/comments.
@mairh Yes, it would be nice to add
Alright. I will add that in the roadmap description and work on it later in the week.
@vlasenko https://github.com/wix/redux-testkit
@vlasenko Thoughts on this? https://github.com/charlieschwabacher/gestalt/blob/master/docs/getting-started.md
I particularly like the neo4j borrowing for automatically defining of relationships and join tables ...
@justinr1234 Yes, it looks interesting for quickly generating API and GraphQL schema. I think one can use gestalt
for generating backend and build web and mobile frontend with this kit.
Of course if one could generate server modules for the kit using gestalt
, that would be the best integration, but this will require some effort to implement I think.
I'm here to add my vote for more documentation. (IMO, the most important next item for the roadmap). I created an issue asking for documentation of the Feature class #565. I also like the suggestions in #393.
what do you think about apollo-prisma approach? will reduce lot of code (mysql ) i guess and simplify i don't know knex .. and looking through this repo, afraid me to have a start with
@simonjoom Yes, but this will come with worse customization options. Right now the code is totally flexible. We can have separate Prisma-powered backend in the kit if someone be willing to maintain it. The direction we are going to move and maintain is CLI crud: https://github.com/sysgears/apollo-universal-starter-kit/issues/732
General roadmap for upcoming Apollo universal starter kit features, and a priority they'll be approached.
Feel free to suggest any features you'd like to see in this thread, and they'll be considered for inclusion.
Done
Soon
post_add
+post_edit
) (#322)Future