allretweet
[rainbowstream.git] / README.rst
1 Rainbow Stream
2 --------------
3
4 .. image:: http://img.shields.io/pypi/dm/rainbowstream.svg?style=flat
5 :target: https://pypi.python.org/pypi/rainbowstream
6
7 .. image:: http://img.shields.io/pypi/v/rainbowstream.svg?style=flat
8 :target: https://pypi.python.org/pypi/rainbowstream
9
10 Terminal-based Twitter Client. Realtime tweetstream, compose, search ,
11 favorite … and much more fun directly from terminal.
12
13 This package is built on the top of `Python Twitter Tool`_ and `Twitter API`_.
14
15 Showcase
16 ----------
17 Screencast: https://www.youtube.com/watch?v=tykCvPMJq8s
18
19 Screenshot:
20
21 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/RainbowStream.png
22 :alt: rainbowstream
23
24 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/RainbowStreamIOT.png
25 :alt: rainbowstreamIOT
26
27 Install
28 -------
29
30 You will need Python 2.7+ and pip.
31
32 .. code:: bash
33
34 sudo pip install rainbowstream
35
36 or try with a virtualenv
37
38 .. code:: bash
39
40 sudo pip install virtualenv # skip if you already have virtualenv
41 virtualenv venv
42 source venv/bin/activate # use the brand new virtualenv.
43 pip install rainbowstream
44
45 Usage
46 -----
47
48 The stream
49 ^^^^^^^^^^
50
51 Just type
52
53 .. code:: bash
54
55 rainbow
56
57 and see your stream.
58
59 I shipped a feature which can display **tweet's images directly on terminal**.
60 You can try it with:
61
62 .. code:: bash
63
64 rainbow -iot # Or rainbow --image-on-term
65
66 In the first time you will be asked for authorization of Rainbow Stream
67 app at Twitter. Just click the “Authorize access” button and paste PIN
68 number to the terminal, the rainbow will start.
69
70 The interactive mode
71 ^^^^^^^^^^^^^^^^^^^^
72
73 While your personal stream is continued, you are also ready to tweet,
74 search, reply, retweet… directly from console. Simply type “h” and hit
75 the Enter key to see the help.
76
77 Input is in interactive mode. It means that you can use arrow key to
78 move up and down history, tab-autocomplete or 2 tab to view available
79 suggestion. Input history from previous run is available as well.
80
81 Here is full list of supported command:
82
83 **Explore Commands**
84
85 - ``trend`` will show global trending topics. ``trend US`` will show
86 trends in United States while ``trend JP Tokyo`` will show trends in
87 Tokyo/Japan.
88
89 - ``home`` will show your timeline. ``home 10`` will print exactly 10
90 tweets.
91
92 - ``mentions`` will show mentions timeline. ``mentions 7`` will show 7
93 mention tweets.
94
95 - ``whois @dtvd88`` will show profile of @dtvd88.
96
97 - ``view @mdo`` will show @mdo ’s timeline. ``view @dmo 9`` will print
98 exactly 9 tweets.
99
100 - ``s #noah`` will search the word *‘noah’*. Result will come back with
101 highlight.
102
103 **Tweet Commands**
104
105 - ``t the rainbow is god's promise to noah`` will tweet exactly *‘the
106 rainbow is god’s promise to noah’*.
107
108 - ``rt 12`` will retweet the tweet with *[id=12]*. You can see id of
109 each tweet beside the time.
110
111 - ``rep 12 Really`` will reply *‘Really’* to the tweet with *[id=12]*.
112
113 - ``fav 12`` will favorite the tweet with *[id=12]*.
114
115 - ``ufav 12`` will unfavorite tweet with *[id=12]*.
116
117 - ``del 12`` will delete tweet with *[id=12]*.
118
119 - ``show image 12`` will show the image in tweet with *[id=12]* in your
120 OS’s image viewer.
121
122 **Direct Messages Commands**
123
124 - ``inbox`` will show inbox messages. ``inbox 7`` will show newest 7
125 messages.
126
127 - ``sent`` will show sent messages. ``sent 7`` will show newest 7
128 messages.
129
130 - ``mes @dtvd88 hi`` will send a ``hi`` message to @dtvd88.
131
132 - ``trash 5`` will remove message with *[message\_id=5]*
133
134 **Friends and followers Commands**
135
136 - ``ls fl`` will list all your followers (people who are following
137 you).
138
139 - ``ls fr`` will list all your friends (people who you are following).
140
141 - ``fl @dtvd88`` will follow @dtvd88.
142
143 - ``ufl @dtvd88`` will unfollow @dtvd88.
144
145 - ``mute @dtvd88`` will mute @dtvd88.
146
147 - ``unmute @dtvd88`` will unmute @dtvd88.
148
149 - ``muting`` will list muting users.
150
151 - ``block @dtvd88`` will block @dtvd88.
152
153 - ``unblock @dtvd88`` will unblock @dtvd88.
154
155 - ``report @dtvd88`` will report @dtvd88 as a spam account.
156
157 **Screening Commands**
158
159 - ``h`` will show the help.
160
161 - ``c`` will clear the screen.
162
163 - ``q`` will quit.
164
165 **Switching Stream Commands**
166
167 - ``switch public #AKB48`` will switch current stream to public stream
168 and track keyword ``AKB48``
169
170 - ``switch public #AKB48 -f`` will do exactly as above but will ask you
171 to provide 2 list:
172
173 ``Only nicks`` decide what nicks will be include only.
174
175 ``Ignore nicks``\ decide what nicks will be exclude.
176
177 - ``switch public #AKB48 -d`` will apply filter to *ONLY\_LIST* and
178 *IGNORE\_LIST*. You can setup 2 list above at ``config.py``
179
180 - ``switch mine`` will switch current stream to personal stream. ``-f``
181 and ``-d`` will work as well.
182
183 **Smart shell**
184
185 - Put anything to terminal, the app will try to eval and display result as a python interactive shell.
186
187 + ``142857*2`` or ``101**3`` like a calculator.
188 + Even ``cal`` will show the calendar for current month.
189 + Put ``order_rainbow('anything')`` or ``random_rainbow('wahahaha')`` will make more fun :)
190
191
192 For example see the screenshot above.
193
194 Bug and feature requests
195 ------------------------
196
197 Found a bug or a feature request ?
198 Please `create an issue`_ or contact me at `@dtvd88`_
199
200 Contributing
201 ------------
202 I appreciate any help and support. Feel free to `fork`_ and `create a pull request`_.
203 You will be listed as contributor.
204
205 License
206 -------
207
208 Rainbow Stream are released under an MIT License. See LICENSE.txt for
209 details
210
211
212 .. _Python Twitter Tool: http://mike.verdone.ca/twitter/
213 .. _Twitter API: https://dev.twitter.com/docs/api/1.1
214 .. _create an issue: https://github.com/DTVD/rainbowstream/issues/new
215 .. _@dtvd88: https://twitter.com/dtvd88
216 .. _fork: https://github.com/DTVD/rainbowstream/fork
217 .. _create a pull request: https://github.com/DTVD/rainbowstream/compare/