Slack Clone is a sample app implemented using Stream Chat and React Native. It is a fully fledged messaging app built using core packages.
โ ๏ธ Please don't simply copy-paste the code in your project. Projects in this repository are just the demostrations for power of Stream Chat and React Native, and should not be used as source for ready to publish application.
Before running this project please ensure React Native is installed and configured on your machine. If you're new to React Native, please checkout the official guide with installation instructions for your OS.
This project is only configured to support the following platforms:
- Android
- iOS
Web and Desktop are not supported at this time.
After installing React Native and the necessary toolchain for your device (Android or iOS), connect your device or open your emulator before running the following:
Clone the repo
git clone https://github.com/GetStream/react-native-samples
Open the app folder
cd react-native-samples/projects/slack-clone
Install package dependencies:
# Install npm dependencies
yarn
# Install pod dependencies
npx pod-install
- Create a new app in our dashboard (or use existing one if you have already)
- Set your
api key
andapi secret
intest-data-cli.config.js
file. - Run the following command:
yarn create-channels --config="test-data-cli.config.js"
- The output of this command will include bunch of user ids and their respective token. You can copy-paste any one of the listed user id & token to
.env
file (as mentioned in next section)
- Create an .env file in root folder of this project:
touch .env
-
Set following environment variables in
.env
file.API_KEY
USER_ID
USER_TOKEN
Run the project on your device or emulator:
npx react-native run-ios # for iOS
npx react-native run-android # for android