Commit | Line | Data |
---|---|---|
b8c1f42a | 1 | ## Rainbow Stream |
169b134d | 2 | |
0d631c7a O |
3 | [![Download](http://img.shields.io/pypi/dm/rainbowstream.svg?style=flat)](https://pypi.python.org/pypi/rainbowstream) |
4 | [![Version](http://img.shields.io/pypi/v/rainbowstream.svg?style=flat)](https://pypi.python.org/pypi/rainbowstream) | |
1e979485 | 5 | |
b8c1f42a | 6 | Terminal-based Twitter Client. |
07d41d27 | 7 | Realtime tweetstream, compose, search , favorite ... and much more fun directly from terminal. |
cd300211 | 8 | |
90630e52 | 9 | This package is built on top of [Python Twitter Tool](http://mike.verdone.ca/twitter/) and [Twitter API](https://dev.twitter.com/docs/api/1.1). |
f5dcec85 | 10 | |
5fba2a02 O |
11 | ## Showcase |
12 | Screencast: | |
13 | https://www.youtube.com/watch?v=tykCvPMJq8s | |
14 | <br> | |
12e072c0 | 15 | |
5fba2a02 | 16 | Screenshot: |
577df0e3 O |
17 | ![rainbowstream](./screenshot/RainbowStream.png) |
18 | ![rainbowstreamIOT](./screenshot/RainbowStreamIOT.png) | |
91476ec3 | 19 | |
b04861f5 | 20 | |
91476ec3 | 21 | ## Install |
52974125 | 22 | You will need Python 2.7+ and pip. |
c267927c O |
23 | |
24 | ```bash | |
303f38c9 O |
25 | sudo pip install rainbowstream |
26 | ``` | |
27 | ||
1dd4a2c9 | 28 | or try with a virtualenv |
303f38c9 | 29 | ```bash |
1dd4a2c9 | 30 | sudo pip install virtualenv # skip if you already have virtualenv |
303f38c9 O |
31 | virtualenv venv |
32 | source venv/bin/activate # use the brand new virtualenv. | |
52974125 | 33 | pip install rainbowstream |
c267927c | 34 | ``` |
91476ec3 | 35 | |
303f38c9 | 36 | |
91476ec3 | 37 | ## Usage |
f36f4df7 O |
38 | #### The stream |
39 | Just type | |
91476ec3 | 40 | ```bash |
20ba76f5 | 41 | rainbow |
91476ec3 | 42 | ``` |
f36f4df7 O |
43 | and see your stream. |
44 | ||
c1fa7c94 O |
45 | I shipped a feature which can display **tweet's images directly on terminal**. |
46 | You can try it with: | |
acf4d473 | 47 | ```bash |
c1fa7c94 | 48 | rainbow -iot # Or rainbow --image-on-term |
acf4d473 O |
49 | ``` |
50 | ||
9f72f0f5 | 51 | In the first time you will be asked for authorization of Rainbow Stream app at Twitter. |
4e2680f6 | 52 | Just click the "Authorize access" button and paste PIN number to the terminal, the rainbow will start. |
91476ec3 | 53 | |
f36f4df7 | 54 | #### The interactive mode |
f3177531 | 55 | While your personal stream is continued, you are also ready to tweet, search, reply, retweet... directly from console. |
f5677fb1 | 56 | Simply type "h" and hit the Enter key to see the help. |
f36f4df7 | 57 | |
f5677fb1 | 58 | Input is in interactive mode. It means that you can use arrow key to move up and down history, tab-autocomplete or 2 tab to view available suggestion. Input history from previous run is available as well. |
f36f4df7 O |
59 | |
60 | Here is full list of supported command | |
61 | ||
84a93d1d | 62 | __Explore Commands__ |
f4ffe56b | 63 | |
b8c1f42a | 64 | * `trend` will show global trending topics. `trend US` will show trends in United States while `trend JP Tokyo` will show trends in Tokyo/Japan. |
f4ffe56b | 65 | |
b8c1f42a | 66 | * `home` will show your timeline. `home 10` will print exactly 10 tweets. |
f36f4df7 | 67 | |
84a93d1d O |
68 | * `mentions` will show mentions timeline. `mentions 7` will show 7 mention tweets. |
69 | ||
70 | * `whois @dtvd88` will show profile of @dtvd88. | |
71 | ||
b8c1f42a | 72 | * `view @mdo` will show @mdo 's timeline. `view @dmo 9` will print exactly 9 tweets. |
f36f4df7 | 73 | |
84a93d1d O |
74 | * `s #noah` will search the word *'noah'*. Result will come back with highlight. |
75 | ||
76 | __Tweet Commands__ | |
e2b81717 | 77 | |
b8c1f42a | 78 | * `t the rainbow is god's promise to noah` will tweet exactly *'the rainbow is god's promise to noah'*. |
f36f4df7 | 79 | |
b8c1f42a | 80 | * `rt 12` will retweet the tweet with *[id=12]*. You can see id of each tweet beside the time. |
3f5ec2a1 O |
81 | |
82 | * `allrt 12 20` will list 20 newest retweets of the tweet with *[id=12]*. | |
08bab467 | 83 | If the number of retweets is not specified, 5 newest retweets will be listed instead. |
c7ef0402 | 84 | |
b8c1f42a | 85 | * `rep 12 Really` will reply *'Really'* to the tweet with *[id=12]*. |
f36f4df7 | 86 | |
84a93d1d | 87 | * `fav 12` will favorite the tweet with *[id=12]*. |
a1c246e6 | 88 | |
b8c1f42a | 89 | * `ufav 12` will unfavorite tweet with *[id=12]*. |
f36f4df7 | 90 | |
84a93d1d | 91 | * `del 12` will delete tweet with *[id=12]*. |
f485db0d | 92 | |
b8c1f42a | 93 | * `show image 12` will show the image in tweet with *[id=12]* in your OS's image viewer. |
f36f4df7 | 94 | |
84a93d1d | 95 | __Direct Messages Commands__ |
b8cc314c | 96 | |
b8c1f42a | 97 | * `inbox` will show inbox messages. `inbox 7` will show newest 7 messages. |
e2b81717 | 98 | |
b8c1f42a | 99 | * `sent` will show sent messages. `sent 7` will show newest 7 messages. |
e2b81717 | 100 | |
84a93d1d O |
101 | * `mes @dtvd88 hi` will send a `hi` message to @dtvd88. |
102 | ||
b8c1f42a | 103 | * `trash 5` will remove message with *[message_id=5]* |
e2b81717 | 104 | |
84a93d1d O |
105 | __Friends and followers Commands__ |
106 | ||
107 | * `ls fl` will list all your followers (people who are following you). | |
108 | ||
109 | * `ls fr` will list all your friends (people who you are following). | |
e2b81717 | 110 | |
b8c1f42a | 111 | * `fl @dtvd88` will follow @dtvd88. |
f5677fb1 | 112 | |
b8c1f42a | 113 | * `ufl @dtvd88` will unfollow @dtvd88. |
f36f4df7 | 114 | |
84a93d1d O |
115 | * `mute @dtvd88` will mute @dtvd88. |
116 | ||
117 | * `unmute @dtvd88` will unmute @dtvd88. | |
118 | ||
119 | * `muting` will list muting users. | |
120 | ||
121 | * `block @dtvd88` will block @dtvd88. | |
122 | ||
123 | * `unblock @dtvd88` will unblock @dtvd88. | |
124 | ||
125 | * `report @dtvd88` will report @dtvd88 as a spam account. | |
126 | ||
84a93d1d | 127 | __Switching Stream Commands__ |
4e0bf227 | 128 | |
b8c1f42a | 129 | * `switch public #AKB48` will switch current stream to public stream and track keyword `AKB48` |
4e0bf227 | 130 | |
b8c1f42a | 131 | * `switch public #AKB48 -f ` will do exactly as above but will ask you to provide 2 list: |
4e0bf227 | 132 | |
b8c1f42a | 133 | `Only nicks` decide what nicks will be include only. |
4e0bf227 | 134 | |
b8c1f42a | 135 | `Ignore nicks`decide what nicks will be exclude. |
4e0bf227 | 136 | |
b8c1f42a O |
137 | * `switch public #AKB48 -d ` will apply filter to *ONLY_LIST* and *IGNORE_LIST*. |
138 | You can setup 2 list above at `config.py` | |
4e0bf227 | 139 | |
b8c1f42a | 140 | * `switch mine` will switch current stream to personal stream. `-f` and `-d` will work as well. |
4e0bf227 | 141 | |
fda8755a O |
142 | __Smart shell__ |
143 | ||
144 | * Put anything to terminal, the app will try to eval and display result as a python interactive shell. | |
145 | * `142857*2` or `101**3` like a calculator. | |
146 | * Even `cal` will show the calendar for current month. | |
b4093c79 | 147 | * Put `order_rainbow('anything')` or `random_rainbow('wahahaha')` will make more fun :) |
fda8755a | 148 | |
3f5ec2a1 O |
149 | __Screening Commands__ |
150 | ||
151 | * `h` will show the help. | |
152 | ||
153 | * `c` will clear the screen. | |
154 | ||
155 | * `q` will quit. | |
156 | ||
72b9e670 O |
157 | For example see the screenshot above. |
158 | ||
3aa1d137 O |
159 | ## Bug and feature requests |
160 | Found a bug or a feature request ? | |
b8c1f42a | 161 | Please [create an issue](https://github.com/DTVD/rainbowstream/issues/new) |
6a26fca1 O |
162 | or contact me at [@dtvd88](https://twitter.com/dtvd88) |
163 | ||
3aa1d137 O |
164 | ## Contributing |
165 | I appreciate any help and support. Feel free to | |
166 | [fork](https://github.com/DTVD/rainbowstream/fork) | |
167 | and | |
168 | [create a pull request](https://github.com/DTVD/rainbowstream/compare/). | |
169 | You will be listed as contributor. | |
170 | ||
f5dcec85 | 171 | ## License |
13b5b854 | 172 | Rainbow Stream are released under an MIT License. See LICENSE.txt for details |