Clone App for Hello Talk.
Want to see it in action? check out this youtube video.
This project is using boilterplate.
If you're trying to setup expo
+ typescript
+ jest
, then you should check it out.
-
This app uses
firebase
. Check this link. -
We need
app.json
. Makeapp.json
file under root directory. You can useextra
field like below to keepfirebase secrets
.
{
"expo": {
"name": "react-native-hello-talk",
"description": "A very interesting project.",
"privacy": "public",
"sdkVersion": "31.0.0",
"platforms": ["ios", "android"],
"version": "1.0.0",
"orientation": "default",
"icon": "./assets/images/icon.png",
"splash": {
"image": "./assets/images/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": ["**/*"],
"ios": {
"supportsTablet": true
},
"extra": {
"firebaseConfig": {
"apiKey": "apiKey",
"authDomain": "authDomain",
"projectId": "projectId",
"storageBucket": "storageBucket",
"messagingSenderId": "messagingSenderId",
"databaseURL": "databaseURL"
}
}
}
}
// how to use Constants in js file
// reference: https://docs.expo.io/versions/latest/sdk/constants
import { Constants } from 'expo'
Constants.extra.projectId === 'rn-hello-talk' // use extra field like this!
-
Auth
-
login using googleOAuth
-
additional register flow
-
-
Chat
-
create new chat
-
list chats belonging to the user
-
send pictures
-
find people to talk to
-
add user online status
-
-
Profile
-
edit profile (description, etc)
-
logout
-
-
Etc
-
splash screen
-
push notification
-
test coverage >= 60%
-