https://github.com/garrettmac/react-native-tweet
https://github.com/garrettmac/react-native-tweet
react-native react-native-component react-native-module
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/garrettmac/react-native-tweet
- Owner: garrettmac
- Created: 2017-09-15T21:11:56.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-09-27T19:58:57.000Z (over 7 years ago)
- Last Synced: 2024-10-06T01:23:18.953Z (8 months ago)
- Topics: react-native, react-native-component, react-native-module
- Language: Objective-C
- Size: 35.1 MB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README-dev.md
Awesome Lists containing this project
README
Meet react-native-tweet
# React Native Tweet
React Native Tweet is the most up to date Twitter Module using **Twitter Kit 3**
**NOTE:** THIS DOES NOT USE FABRIC!
Currently only ios, android coming soon
## Getting Started
## Installation
- Install `react-native` first
```bash
npm i react-native -g
yarn add react-native-tweet
mkdir Example
cd Example
yarn install #(or with npm)
npm start
```### Example
or clone the repo and play with the example project
```bash
$ git clone https://github.com/garrettmac/react-native-tweet
# $ cd react-native-tweet/Example //not available yet
$ yarn install
$ react-native link react-native-tweet
$ npm start
```
### Setup#### ios
1. install the latest
https://dev.twitter.com/twitterkit/ios/installation
2. Drag All four to your project
> TwitterCore.framework
> TwitterKit.framework
> TwitterKitResources.bundle
> TwitterShareExtensionUIResources.bundle(Also see this repos screen shots for more details on setting up)
https://apps.twitter.com
3. add this to your `.plist`
> in your ios/EXAMPLE.plist
```
CFBundleURLTypes
CFBundleURLSchemes
twitterkit-
LSApplicationQueriesSchemes
twitterauth```
4. edit your AppDelegate
> in your ios/AppDelegate.m
```
#import...
@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
...
[[Twitter sharedInstance] startWithConsumerKey:@"XXXXXXXXX" consumerSecret:@"XXXXXXXXX"];
...
```### Basic Usage
- In your `index.js`, use:
```jsx
import RNTweet from "react-native-tweet"
........
```| Methods | Params | Description |
|------------------|------------------|------------------|
| `login` | N/A | Login User |
| `logout` | N/A | Logout User |
| `compose` | {setText,setURL,setVideo,setImage} | Compose Tweet |
| `user` | N/A | Get User |
| `retweet` | tweet `id` | Retweet |
| `api` | {endpoint,q}| Api User |## init()
**Usage**
You only need to call it once and it can be added anywhere but it's better before your `AppRegister` function.
```jsx
RNTwitter.init({consumerSecret:"",consumerKey:""})
```## hideAlerts()
**Usage**
You only need to call it once and it can be added anywhere but it's better before your `AppRegister` function.
```jsx
RNTwitter.hideAlerts()
```## login()
```jsx
RNTwitter.login()
.then(user=>console.log(user))
.catch(console.warn)//optional```
## compose()
```jsx
RNTwitter.compose({
setText:"YOUR TEXT"
setURL:"YOUR URL"
// setVideo:"YOUR VIDEO" //coming soon
setImage:"YOUR IMAGE"
})
.then(console.log)
.catch(console.warn)//optional```
## logout()
```jsx
RNTwitter.logout()
.then(console.log)
.catch(console.warn)//optional```
## user()```jsx
RNTwitter.user()
.then(console.log)
.catch(console.warn)//optional```
## retweet(tweetId)```jsx
RNTwitter.retweet(tweetId)
.then(console.log)
.catch(console.warn)//optional
```## api(options)
```jsx
RNTwitter.api({
endpoint: 'search/tweets.json',
q: encodeURI(`${q}`),
count
})
.then(tweets=>{
console.log(tweets)
})
.catch(console.warn)//optional
```> see https://dev.twitter.com/rest/public