⚠️ Warning - This library is now deprecated in favour of the upstream ably-js repository. If you want to use Ably in a React Native project please use that library instead.

A React Native client library for Ably Realtime, a realtime data delivery platform.
This repo is a wrapper for the ably-js client library which introduces a dependency needed by React Native. See the ably-js README for usage details of the ably-js client library. The ably-js library currently targets the Ably 1.1 client library specification. You can jump to the 'Known Limitations' section to see the features this client library does not yet support or view our client library SDKs feature support matrix to see the list of all the available features.
For complete API documentation, see the Ably Realtime documentation.
Known Limitations
The ably-js library currently does not support being the target of a push notification (i.e. web push)
How to use this library
Installation from npm
npm install ably-react-native
Usage
For the Realtime library:
import * as Ably from 'ably'
const realtime = new Ably.Realtime(options: ClientOptions)
const Ably = require('ably');
const client = new Ably.Realtime(options: ClientOptions);
For the REST-only library:
import * as Ably from 'ably'
const realtime = new Ably.Rest(options: ClientOptions)
const Ably = require('ably');
const client = new Ably.Rest(options: ClientOptions);
For very old versions of React Native, which do not support the react-native
automatic entrypoint, you may have to instead do
var Ably = require('ably/browser/static/ably-reactnative.js');
(and similarly for Rest)
API usage, tests, contributing, etc.
See the ably-js repo.
FAQs
Is this repo actively maintained?
Yes, this repo typically has very few recent commits because this React Native repo doesn't do very much: it's a very thin wrapper around the ably-js repo.
Does this repo support all platforms supported by React Native?
Yes, as far as we know. If you find any issues, please raise an issue (in this repo only for issues specific to react-native or this wrapper; all other issues should go in the main ably-js repo) or contact us
Release process
This library uses semantic versioning. For each release, the following needs to be done:
- Update the version number by running
npm version <type>
(see docs) and commit the change.
- Add a tag and push to origin such as
git tag v1.0.0 && git push origin v1.0.0
- Run
npm publish
to publish the gem to npm
License
Copyright (c) 2016 Ably Real-time Ltd, Licensed under the Apache License, Version 2.0. Refer to LICENSE for the license terms.