849de55604 | ||
---|---|---|
.circleci | ||
.expo | ||
.github | ||
__mocks__ | ||
__tests__ | ||
android | ||
app | ||
e2e | ||
icons/20x20 | ||
ios | ||
resources/fonts | ||
scripts | ||
storybook | ||
temp | ||
.babelrc | ||
.bettercodehub.yml | ||
.buckconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.flowconfig | ||
.gitattributes | ||
.gitignore | ||
.snyk | ||
.travis.yml | ||
.watchmanconfig | ||
LICENSE | ||
README.md | ||
app.json | ||
index.android.js | ||
index.ios.js | ||
jsconfig.json | ||
key.keystore.enc | ||
package-lock.json | ||
package.json |
README.md
Rocket.Chat React Native Mobile
Supported Server Versions: 0.58.0+ (We are working to support earlier versions)
Download
Note: If you want to try iOS version, send us an email to testflight@rocket.chat and we'll add you to TestFlight users.
Installing dependencies
Follow the React Native Getting Started Guide for detailed instructions on setting up your local machine for development.
How to run
-
Clone repository and install dependencies:
$ git clone git@github.com:RocketChat/Rocket.Chat.ReactNative.git $ cd Rocket.Chat.ReactNative $ npm install -g react-native-cli $ npm install
-
Configuration
$ npm run fabric-ios --key="YOUR_API_KEY" --secret="YOUR_API_SECRET" $ npm run fabric-android --key="YOUR_API_KEY" --secret="YOUR_API_SECRET"
-
Run application
$ npm run ios
$ npm run android
Running single server
If you don't need multiple servers, there is a branch single-server
just for that.
Readme will guide you on how to config.
Roadmap
Current priorities
- Open PDF and other file types (#341)
- [NEW] Commands (#405)
- Better message actions (#329)
- [NEW] Login/Register/Forgot Password layout (#400)
To do
Task | Status |
---|---|
[NEW] Reply Preview (#311) | ✅ |
Image upload improvements (#368) | ✅ |
[NEW] Onboarding (#392) | ✅ |
[NEW] Create channel layout (#401) | ✅ |
[NEW] Splash screen (#399) | ✅ |
[NEW] Add empty chat background (#398) | ✅ |
[NEW] Message layout (#397) | ✅ |
[NEW] Rooms list layout (#395) | ✅ |
Add components to Storybook (#38) | WIP |
Open PDF and other file types (#341) | WIP |
Better message actions (#329) | ❌ |
[NEW] Settings layout (#396) | ❌ |
[NEW] Contextual bar layout (#402) | ❌ |
[NEW] Login/Register/Forgot Password layout (#400) | ❌ |
[NEW] Commands (#405) | ❌ |
[Android] Add Fastlane (#404) | ❌ |
[NEW] Auto versioning app on Circle CI (#393) | ❌ |
[Android] Group notifications by room (#391) | ❌ |
Integrate project with code push (#233) | ❌ |
Custom icons (#210) | ❌ |
Share Extension (#69) | ❌ |
Upload files (#2) | ❌ |
Features
Feature | Status |
---|---|
Send message | ✅ |
Authentication via Email | ✅ |
Authentication via Username | ✅ |
Authentication via LDAP | ✅ |
Message format: Markdown | ✅ |
Message format: System messages (Welcome, Message removed...) | ✅ |
Message format: links | ✅ |
Message format: images | ✅ |
Message format: replies | ✅ |
Message format: alias with custom message (title & text) | ✅ |
Messages list: day separation | ✅ |
Messages list: load more on scroll | ✅ |
Messages list: receive new messages via subscription | ✅ |
Subscriptions list | ✅ |
Segmented subscriptions list: Favorites | ✅ |
Segmented subscriptions list: Unreads | ✅ |
Segmented subscriptions list: DMs | ✅ |
Segmented subscriptions list: Channels | ✅ |
Subscriptions list: update user status via subscription | ✅ |
Numbers os messages unread in the Subscriptions list | ✅ |
Status change | ✅ |
Upload image | ✅ |
Upload video | ❌ |
Take picture & upload it | ✅ |
2FA | ✅ |
Signup | ✅ |
Autocomplete with usernames | ✅ |
Autocomplete with @all & @here | ✅ |
Autocomplete room/channel name | ✅ |
Upload audio | ✅ |
Forgot your password | ✅ |
Login screen: terms of service | ✅ |
Login screen: privacy policy | ✅ |
Authentication via Google | ✅ |
Authentication via Facebook | ✅ |
Authentication via Twitter | ✅ |
Authentication via GitHub | ✅ |
Authentication via GitLab | ✅ |
Authentication via LinkedIn | ✅ |
Authentication via Meteor | ✅ |
Authentication via Wordpress | ❌ |
Authentication via Custom OAuth | ❌ |
Authentication via SAML | ❌ |
Authentication via CAS | ❌ |
Custom Fields on Signup | ❌ |
Create channel | ✅ |
Search Local | ✅ |
Search in the API | ✅ |
Settings -> About us | ❌ |
Settings -> Contact us | ❌ |
Settings -> License | ❌ |
Settings -> App version | ❌ |
Autocomplete emoji | ✅ |
Upload file (documents, PDFs, spreadsheets, zip files, etc) | ✅ |
Report message | ❌ |
Copy message | ✅ |
Pin message | ✅ |
Unpin message | ✅ |
Channel Info screen -> Members | ✅ |
Channel Info screen -> Pinned | ✅ |
Channel Info screen -> Starred | ✅ |
Channel Info screen -> Uploads | ❌ |
Star message | ✅ |
Unstar message | ✅ |
Channel Info screen -> Topic | ✅ |
Channel Info screen -> Description | ✅ |
Star a channel | ✅ |
Message format: videos | ✅ |
Message format: audios | ✅ |
Block user (local only) | ✅ |
Edit message | ✅ |
Delete a message | ✅ |
Reply message | ✅ |
Quote message | ✅ |
Record Audio | ✅ |
Record Video | ❌ |
Muted state | ✅ |
Admin panel | ❌ |
Offline reading | ✅ |
Offline writing | ❌ |
Edit profile | ✅ |
Reactions | ✅ |
Custom emojis | ✅ |
Commands | ❌ |
Accessibility (Basic) | ✅ |
Accessibility (Medium) | ❌ |
Accessibility (Advanced) | ❌ |
Reply message from notification | ❌ |
Tap notification, go to the channel | ✅ |
Deep links: Authentication | ✅ |
Deep links: Rooms | ✅ |
Draft per room | ❌ |
Localized in Portuguese (pt-BR) | ❌ |
Localized in Russian | ✅ |
Localized in English | ✅ |
Full name setting | ✅ |
Read only rooms | ✅ |
Typing status | ✅ |
Create channel/group | ✅ |
Disable registration setting | ✅ |
Unread red line indicator on message list | ✅ |
Unread counter banner on message list | ✅ |
Share Extension | ❌ |
Search Messages in Channel | ✅ |
Mentions List | ✅ |
Attachment List | ✅ |
Notifications Preferences | ✅ |
Read receipt | ❌ |
Detox (end-to-end tests)
- Build your app
$ detox build
- Run tests
$ detox test
Storybook
-
General requirements
- Install storybook
$ npm i -g @storybook/cli
- Install storybook
-
Running storybook
- Run storybook application
$ npm run storybook
- Run application in other shell
$ react-native run-ios
- Running storybook on browser to help stories navigation
open http://localhost:7007/
- Run storybook application