Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/GetStream/react-native-activity-feed
Official React Native SDK for Activity Feeds
https://github.com/GetStream/react-native-activity-feed
newsfeed react react-native stream
Last synced: 3 months ago
JSON representation
Official React Native SDK for Activity Feeds
- Host: GitHub
- URL: https://github.com/GetStream/react-native-activity-feed
- Owner: GetStream
- Created: 2018-06-11T09:41:04.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-05-25T13:38:28.000Z (over 1 year ago)
- Last Synced: 2024-06-28T13:35:56.686Z (4 months ago)
- Topics: newsfeed, react, react-native, stream
- Language: JavaScript
- Homepage: https://getstream.io/
- Size: 9.39 MB
- Stars: 195
- Watchers: 36
- Forks: 84
- Open Issues: 82
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Official React Native SDK for [Activity Feeds](https://getstream.io/activity-feeds/)
> React Native components to create activity and notification feeds using Stream
[![NPM](https://img.shields.io/npm/v/react-native-activity-feed.svg)](https://www.npmjs.com/package/react-native-activity-feed)
[![Build Status](https://travis-ci.org/GetStream/react-native-activity-feed.svg?branch=master)](https://travis-ci.org/GetStream/react-native-activity-feed)
[![Component Reference](https://img.shields.io/badge/docs-component%20reference-blue.svg)](https://getstream.github.io/react-native-activity-feed/)![react native activity feed](./src/images/githubhero.png)
The official React Native integration library for Stream, a web service for
building scalable newsfeeds and activity streams.## :warning: This SDK is no longer actively maintained by Stream
A Feeds integration includes a combination of server-side and client-side code and the interface can vary widely which is why we are no longer focussing on supporting this SDK. If you are starting from scratch we recommend you only use the server-side SDKs.
This is by no means a reflection of our commitment to maintaining and improving the Feeds API which will always be a product that we support.
We continue to welcome pull requests from community members in case you want to improve this SDK.
---
Note: The user interface for the activity feed can vary widely across different apps. Most of our activity feed customers integrate with Stream via their backend and build their own UI. This takes advantage of Streamโs scalability while keeping full control over the UI. This library is only updated and improved sporadically.
## TL;DR built-in components for social networks and regular apps
- Flat feeds
- Timelines and Newsfeeds
- Notification feed
- Likes
- Comments
- Activity detail view
- Realtime notifications## ๐ Quick Links
- [Get Started](https://getstream.io/react-native-activity-feed/tutorial/)
- [Example app](https://github.com/GetStream/react-native-example#react-native-activity-feed-example)
- [Component reference docs](https://getstream.github.io/react-native-activity-feed/)
- [Internationalisation (i18n)](https://getstream.github.io/react-native-activity-feed/#internationalisation-i18n)## ๐ React Native Compatibility
To use this library you need to ensure you match up with the correct version of React Native you are using.
| `react-native-activity-feed` version | [`getstream`](https://www.npmjs.com/package/getstream) | react-native |
| ------------------------------------ | ------------------------------------------------------ | ------------ |
| `1.x.x` | `>= 0.6.x` | `>= 0.60.0` |
| `0.x.x` | `< 0.6.0` | `< 0.60.0` |## ๐ฎ Example Apps
- [Expo example](https://github.com/GetStream/react-native-activity-feed/tree/master/examples/expo#expo-example)
- [Native example](https://github.com/GetStream/react-native-activity-feed/tree/master/examples/native#native-example)
- [Complete social networking app](https://github.com/GetStream/react-native-example#react-native-activity-feed-example)## ๐ Installation
### Expo package
```sh
# For Expo apps
expo install expo-activity-feed expo-permissions expo-image-picker```
### Native package
```sh
# For apps with native code
yarn add react-native-activity-feed react-native-image-crop-picker
npx pod-install
```**Note** If you are planning to use the image picker functionality, there are some additional steps to be done.
You can find them here - https://github.com/ivpusic/react-native-image-crop-picker/blob/v0.25.0/README.md#post-install-steps## ๐ Usage & Activity Feed setup
### Setup StreamApp component
In order to use Stream React Components in your application, you first need to initialize the `StreamApp` component. `StreamApp` holds your application config and acts as a service/data provider.
```jsx
{/* everything from your application interacting with Stream should be nested here */}
```
1. **API_KEY** your Stream application API_KEY
2. **API_ID** your Stream application ID
3. **USER_ID** current user's ID
4. **TOKEN** the authentication token for current user
5. **ANALYTICS_TOKEN** [optional] the Analytics auth tokenYou can find your `API_KEY` and `APP_ID` on Stream's dashboard.
#### Generating user token
The authentication user token cannot be generated client-side (that would require sharing your API secret). You should provision a user token as part of the sign-up / login flow to your application from your backend.
```js
const client = stream.connect(API_KEY, API_SECRET);
const userToken = client.createUserToken(userId);
console.log(userToken);
```#### Generating analytics token
React components have analytics instrumentation built-in, this simplifies the integration with Stream. In order to enable analytics tracking, you need to initialize `StreamApp` with a valid analytics token. You can generate this server-side as well.
```js
const client = stream.connect(API_KEY, API_SECRET);
const analyticsToken = client.getAnalyticsToken();
console.log(analyticsToken);
```## Copyright and License Information
Copyright (c) 2015-2019 Stream.io Inc, and individual contributors. All rights reserved.
See the file "LICENSE" for information on the history of this software, terms & conditions for usage, and a DISCLAIMER OF ALL WARRANTIES.
## We are hiring
We've recently closed a [\$38 million Series B funding round](https://techcrunch.com/2021/03/04/stream-raises-38m-as-its-chat-and-activity-feed-apis-power-communications-for-1b-users/) and we keep actively growing.
Our APIs are used by more than a billion end-users, and you'll have a chance to make a huge impact on the product within a team of the strongest engineers all over the world.Check out our current openings and apply via [Stream's website](https://getstream.io/team/#jobs).