Skip to content

Commit ef4ea8b

Browse files
authored
Tweak design and spelling in README
1 parent d443409 commit ef4ea8b

File tree

1 file changed

+40
-37
lines changed

1 file changed

+40
-37
lines changed

README.md

Lines changed: 40 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
# React Native Chat Components
1+
# Official React Native SDK for [Stream Chat](https://getstream.io/chat/)
22

3-
<a href="https://getstream.io/chat/react-native-chat/tutorial/"><img src="https://i.imgur.com/SRkDlFX.png" alt="react native chat" /></a>
3+
<p align="center">
4+
<a href="https://getstream.io/chat/react-native-chat/tutorial/"><img src="https://i.imgur.com/SRkDlFX.png" alt="react native chat" width="60%" /></a>
5+
</p>
46

57
> The official React Native and Expo components for Stream Chat, a service for
68
> building chat applications.
@@ -9,6 +11,8 @@
911
[![Build Status](https://travis-ci.org/GetStream/stream-chat-react-native.svg?branch=master)](https://travis-ci.org/GetStream/stream-chat-react-native)
1012
[![Component Reference](https://img.shields.io/badge/docs-component%20reference-blue.svg)](https://getstream.github.io/stream-chat-react-native/)
1113

14+
<img align="right" src="https://getstream.imgix.net/images/ios-chat-tutorial/[email protected]?auto=format,enhance" width="50%" />
15+
1216
**Quick Links**
1317

1418
- [Stream Chat API](https://getstream.io/chat/) product overview
@@ -38,11 +42,11 @@
3842

3943
## React Native Chat Tutorial
4044

41-
The best place to start is the [React Native Chat Tutorial](https://getstream.io/chat/react-native-chat/tutorial/). It teaches you how to use this SDK and also shows how to make common changes.
45+
The best place to start is the [React Native Chat Tutorial](https://getstream.io/chat/react-native-chat/tutorial/). It teaches you how to use this SDK and also shows how to make frequently required changes.
4246

4347
## Example Apps
4448

45-
This repo includes 2 example apps. One that's used with Expo, and one for native.
49+
This repo includes 2 example apps. One made with Expo, and one Native.
4650

4751
<div style="display: inline">
4852
<img src="./screenshots/1.png" alt="IMAGE ALT TEXT HERE" width="250" border="1" style="margin-right: 30px" />
@@ -62,7 +66,7 @@ This repo includes 2 example apps. One that's used with Expo, and one for native
6266

6367
### Native example
6468

65-
1. Please make sure you have installed necessary dependencies depending on your development OS and target OS. Follow the guidelines given on official react native documentation for installing dependencies: https://facebook.github.io/react-native/docs/getting-started#
69+
1. Please make sure you have installed necessary dependencies depending on your development OS and target OS. Follow the guidelines given on official React Native documentation for installing dependencies: https://facebook.github.io/react-native/docs/getting-started#
6670
2. Make sure node version is >= v10.13.0
6771
3. Start the simulator
6872

@@ -88,11 +92,11 @@ This repo includes 2 example apps. One that's used with Expo, and one for native
8892
> Keystore file '/path_to_project/stream-chat-react-native/examples/NativeMessaging/android/app/debug.keystore' not found for signing config 'debug'.
8993
```
9094

91-
You can generate the debug keystore by running this command in the `android/app/` directory: `keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000` - [Reference](https://github.com/facebook/react-native/issues/25629#issuecomment-511209583)
95+
You can generate the debug Keystore by running this command in the `android/app/` directory: `keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000` - [Reference](https://github.com/facebook/react-native/issues/25629#issuecomment-511209583)
9296

9397
### Slack clone
9498

95-
Checkout our tutorial on how to build a slack clone using react-native and stream-chat-react-native
99+
Check out our tutorial on how to build a slack clone using react-native and stream-chat-react-native
96100

97101
<div style="display: inline">
98102
<img src="./screenshots/4.png" alt="IMAGE ALT TEXT HERE" width="250" border="1" style="margin-right: 30px" />
@@ -111,16 +115,15 @@ Checkout our tutorial on how to build a slack clone using react-native and strea
111115

112116
The [styleguidist docs for stream-chat-react-native](https://getstream.github.io/stream-chat-react-native/) document how all the components work.
113117

114-
The React Native components are created using the stream-chat-js library. If you're customizing the components it's important to learn how the Chat Server API works. You'll want to review our [JS chat API docs](https://getstream.io/chat/docs/js/).
118+
The React Native components are created using the stream-chat-js library. If you're customizing the components, it's essential to learn how the Chat Server API works. You'll want to review our [JS chat API docs](https://getstream.io/chat/docs/js/).
115119
116120
## Keep in mind
117121
118-
1. Navigation between different component is something we expect consumers to
119-
implement. You can checkout the example given in this repository
122+
1. Navigation between different components is something we expect consumers to implement. You can check out the example given in this repository
120123
121-
2. Minor releases may come with some breaking changes, so always check the release notes before upgrading minor version.
124+
2. Minor releases may come with some breaking changes, so always check the release notes before upgrading the minor version.
122125
123-
Library currently exposes following components:
126+
Library currently exposes the following components:
124127
125128
1. Avatar
126129
2. Chat
@@ -137,7 +140,7 @@ Library currently exposes following components:
137140
138141
You can see detailed documentation about the components at https://getstream.github.io/stream-chat-react-native
139142
140-
## Setup (Setting up an chat app)
143+
## Setup (Setting up a chat app)
141144
142145
### Expo package
143146
@@ -153,13 +156,13 @@ cd StreamChatExpoExample
153156
# Add chat expo package
154157
yarn add stream-chat-expo
155158
156-
# If you are using stream-chat-expo <= 0.4.0 and expo <= 34, then you don't need to add @react-native-community/netinfo as dependency. Since previously we used use NetInfo from react-native package.
159+
# If you are using stream-chat-expo <= 0.4.0 and expo <= 34, then you don't need to add @react-native-community/netinfo as dependency, since previously we used NetInfo from react-native package.
157160
expo install @react-native-community/netinfo expo-document-picker expo-image-picker expo-permissions
158161
```
159162

160-
Please check [Example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/ExpoMessaging/App.js) to see usage of the components.
163+
Please check the [example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/ExpoMessaging/App.js) to see usage of the components.
161164

162-
OR you can swap [this file](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/ExpoMessaging/App.js) for your `App.js` in the root folder with additional following steps:
165+
OR you can swap [this file](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/ExpoMessaging/App.js) for your `App.js` in the root folder with by following these additional steps:
163166

164167
```bash
165168
yarn add [email protected] react-native-gesture-handler react-native-reanimated
@@ -197,9 +200,9 @@ react-native link react-native-document-picker
197200

198201
```
199202

200-
Please check [Example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/NativeMessaging/App.js) to see usage of components.
203+
Please check the [example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/NativeMessaging/App.js) to see the usage of these components.
201204

202-
OR you can swap this file for your `App.js` in root folder with additional following steps:
205+
OR you can swap this file for your `App.js` in the root folder by following these additional steps:
203206

204207
```bash
205208
@@ -208,7 +211,7 @@ react-native link react-native-gesture-handler
208211
react-native link react-native-reanimated
209212
```
210213

211-
If you are planning to use image picker, there are some additional steps to be done. You can find them here - https://github.com/react-native-community/react-native-image-picker/blob/master/docs/Install.md
214+
If you are planning to use the image picker, there are some additional steps to be done. You can find them here - https://github.com/react-native-community/react-native-image-picker/blob/master/docs/Install.md
212215

213216
If you are planning to use file/document picker, you need to enable iCloud capability in your app - https://github.com/Elyx0/react-native-document-picker#reminder
214217

@@ -229,23 +232,23 @@ cd ios && pod install && cd ..
229232

230233
```
231234

232-
Just to be sure, please verify you are using appropriate version of following packages as per your react-native version.
235+
Just to be sure, please verify you are using the appropriate version of the following packages as per your react-native version.
233236

234237
- netinfo : https://github.com/react-native-community/react-native-netinfo#react-native-compatibility
235238

236239
- react-native-image-picker : https://github.com/react-native-community/react-native-image-picker#react-native-compatibility
237240

238-
Please check [Example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/NativeMessaging/App.js) to see usage of components.
241+
Please check the [example](https://github.com/GetStream/stream-chat-react-native/blob/master/examples/NativeMessaging/App.js) to see the usage of components.
239242

240-
OR you can swap this file for your `App.js` in root folder with additional following steps:
243+
OR you can swap this file for your `App.js` in the root folder by following these additional steps:
241244

242245
```bash
243246
244247
yarn add react-native-gesture-handler react-native-reanimated
245248
cd ios && pod install && cd ..
246249
```
247250

248-
If you are planning to use image picker, there are some additional steps to be done. You can find them here - https://github.com/react-native-community/react-native-image-picker/blob/master/docs/Install.md
251+
If you are planning to use an image picker, there are some additional steps to be done. You can find them here - https://github.com/react-native-community/react-native-image-picker/blob/master/docs/Install.md
249252

250253
If you are planning to use file/document picker, you need to enable iCloud capability in your app - https://github.com/Elyx0/react-native-document-picker#reminder
251254

@@ -259,13 +262,13 @@ react-native run-ios
259262

260263
**Note for Android**:
261264

262-
If you are using androidx app:
265+
If you are using AndroidX app:
263266

264267
> AndroidX is a major step forward in the Android ecosystem, and the old support library artifacts are being deprecated. For 0.60, React Native has been migrated over to AndroidX. This is a breaking change, and your native code and dependencies will need to be migrated as well.
265268
266-
(reference: https://facebook.github.io/react-native/blog/2019/07/03/version-60#androidx-support)
269+
(Reference: https://facebook.github.io/react-native/blog/2019/07/03/version-60#androidx-support)
267270

268-
In current context, dependencies such as `react-native-document-picker` and (if you are using `react-navigation`) `react-native-gesture-handler`, `react-native-reanimated` don't have androidx support. But awesome tool named [jetifier](https://github.com/mikehardy/jetifier) is quite useful to patch these dependencies with androidx support.
271+
In current context, dependencies such as `react-native-document-picker` and (if you are using `react-navigation`) `react-native-gesture-handler`, `react-native-reanimated` don't have AndroidX support. But an awesome tool named [jetifier](https://github.com/mikehardy/jetifier) is quite useful to patch these dependencies with AndroidX support.
269272

270273
**NOTE** If you are planning to use file picker functionality, make sure you enable iCloud capability in your app
271274

@@ -276,15 +279,15 @@ In current context, dependencies such as `react-native-document-picker` and (if
276279
- Upgrade from 0.1.x to 0.2.x:
277280

278281
- 0.2.x added support for react native 0.60. Dependencies like `react-native-image-picker`, `react-native-document-picker` and `netinfo` have been taken out of hard dependencies and moved to peer dependencies and thus will have to be installed manually on consumer end ([Reference](https://github.com/GetStream/stream-chat-react-native/pull/52/files#diff-83a54d8caab0ea9fcdd5f832b03a5d83))
279-
- React native 0.60 came with autolinking functionality, that means if some native libraries are linked manually before upgrade, they will have to be unlinked so that react native can autolink them ([Reference](https://facebook.github.io/react-native/blog/2019/07/03/version-60#native-modules-are-now-autolinked))
282+
- React Native 0.60 came with auto-linking functionality that means if some native libraries are linked manually before the upgrade, they will have to be unlinked, so that React Native can auto-link them ([Reference](https://facebook.github.io/react-native/blog/2019/07/03/version-60#native-modules-are-now-autolinked))
280283

281284
```
282285
react-native unlink react-native-image-picker
283286
react-native unlink react-native-document-picker
284287
react-native unlink @react-native-community/netinfo
285288
```
286289
287-
- React native 0.60 has been migrated over to AndroidX. In current context, dependencies such as `react-native-document-picker` and (if you are using `react-navigation`) `react-native-gesture-handler`, `react-native-reanimated` don't have androidx support. But awesome tool named [jetifier](https://github.com/mikehardy/jetifier) is quite useful to patch these dependencies with androidx support.
290+
- React Native 0.60 has been migrated over to AndroidX. In the current context, dependencies such as `react-native-document-picker` and (if you are using `react-navigation`) `react-native-gesture-handler`, `react-native-reanimated` don't have AndroidX support. But an excellent tool named [jetifier](https://github.com/mikehardy/jetifier) is quite useful to patch these dependencies with AndroidX support.
288291
289292
- CocoaPods are not part of React Native's iOS project ([ref](https://facebook.github.io/react-native/blog/2019/07/03/version-60#cocoapods-by-default)). Thus make sure to install all the pod dependencies.
290293
@@ -294,11 +297,11 @@ In current context, dependencies such as `react-native-document-picker` and (if
294297
295298
## Common issues
296299
297-
#### While running native example, you may (not necessarily) run into following issues:
300+
#### While running native example, you may (not necessarily) run into the following issues:
298301
299-
1. When you execute `react-native run-ios` for the first time, it starts a metro bundler in parallel. It can result into some errors, since build process isn't complete yet. Try the following to fix this:
302+
1. When you execute `react-native run-ios` for the first time, it starts a metro bundler in parallel. It can result in some errors since the build process isn't complete yet. Try the following to fix this:
300303
1. Close/stop the metro bundler process.
301-
2. Let the build process finish completely, it can take usually around 2-3 minutes for the first time.
304+
2. Let the build process finish. It can usually take around 2-3 minutes for the first time.
302305
3. Start the metro bundler manually by executing `yarn start` inside `stream-chat-react-native/examples/NativeMessaging` directory.
303306
2. When you execute `react-native run-android`, you may (not necessarily) run into following error:
304307
@@ -326,7 +329,7 @@ In current context, dependencies such as `react-native-document-picker` and (if
326329
error Command failed: ./gradlew app:installDebug. Run CLI with --verbose flag for more details.
327330
```
328331

329-
To resolve this, do the following
332+
To resolve this, do the following.
330333

331334
1. Craete a file named `local.properties` inside `stream-chat-react-native/examples/NativeMessaging/android` directory
332335
2. Put the this line in that file. Make sure sdk path is correctly mentioned as per your system:
@@ -337,8 +340,8 @@ In current context, dependencies such as `react-native-document-picker` and (if
337340
338341
## Internationalisation
339342
340-
Instance of class `Streami18n` should be provided to Chat component to handle translations.
341-
Stream provides following list of in-built translations for components:
343+
Instance of class `Streami18n` should be provided to the Chat component to handle translations.
344+
Stream provides the following list of built-in translations for components:
342345
343346
1. English (en)
344347
2. Dutch (nl)
@@ -348,7 +351,7 @@ Stream provides following list of in-built translations for components:
348351
6. Italian (it)
349352
7. Hindi (hi)
350353
351-
Default language is English. Simplest way to start using chat components in one of the in-built languages would be following:
354+
The default language is English. The simplest way to start using chat components in one of the in-built languages is the following:
352355
353356
Simplest way to start using chat components in one of the in-built languages would be following:
354357
@@ -374,7 +377,7 @@ const i18n = new Streami18n({
374377

375378
You can find all the available keys here: https://github.com/GetStream/stream-chat-react-native/tree/master/src/i18n
376379

377-
They are also exported as json object from the library.
380+
They are also exported as a JSON object from the library.
378381

379382
```js static
380383
import {
@@ -393,5 +396,5 @@ Please read this docs on i18n for more details and further customizations - http
393396

394397
## Contributing
395398

396-
We welcome code changes that improve this library or fix a problem, please make sure to follow all best practices and test all the changes. Please check our [dev setup docs](https://github.com/GetStream/stream-chat-react-native/wiki/Dev-setup-for-contributing-to-the-library) to get you started. We are very happy to merge your code in the official repository. Make sure to sign our [Contributor License Agreement (CLA)](https://docs.google.com/forms/d/e/1FAIpQLScFKsKkAJI7mhCr7K9rEIOpqIDThrWxuvxnwUq2XkHyG154vQ/viewform) first. See our license file for more details.
399+
We welcome code changes that improve this library or fix a problem, and please make sure to follow all best practices and test all the changes. Please check our [dev setup docs](https://github.com/GetStream/stream-chat-react-native/wiki/Dev-setup-for-contributing-to-the-library) to get you started. We are pleased to merge your code into the official repository. Make sure to sign our [Contributor License Agreement (CLA)](https://docs.google.com/forms/d/e/1FAIpQLScFKsKkAJI7mhCr7K9rEIOpqIDThrWxuvxnwUq2XkHyG154vQ/viewform) first. See our license file for more details.
397400

0 commit comments

Comments
 (0)