/Rocket.Chat.ReactNative

Official React Native Client for Rocket.Chat

Primary LanguageJavaScriptMIT LicenseMIT

Rocket.Chat React Native Mobile

Greenkeeper badge Build Status Project Dependencies Codacy Badge codecov CodeFactor Known Vulnerabilities

Supported Server Versions: 0.66.0+

Download

Download on Google Play Download on App Store

Beta Access

TestFlight

You can signup to our TestFlight builds by acessing this link: https://testflight.apple.com/join/7I3dLCNT.

Android

You can get the latest Android builds at #react-native channel.

Reporting an Issue

Github Issues are used to track todos, bugs, feature requests, and more.

Also check the community on open.rocket.chat. We'd like to help.

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
    $ yarn global add react-native-cli
    $ yarn
  • Run application

    $ yarn ios
    $ yarn 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

  1. [NEW] Jitsi integration
  2. [NEW] Slash Commands (#405)
  3. [NEW] Read receipt (#542)
  4. [Android] Group notifications by room (#391)

To do

Task Status
[NEW] Jitsi integration WIP
[NEW] Settings layout (#396)
[NEW] Contextual bar layout (#402)
[NEW] Slash Commands (#405)
[Android] Group notifications by room (#391)
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
      $ yarn global add @storybook/cli
  • Running storybook

    • Run storybook application
      $ yarn storybook
    • Run application in other shell
      $ react-native run-ios
    • Running storybook on browser to help stories navigation
      open http://localhost:7007/