7e39228c2fdb18e38fcee3979dfd9f0c25cbbb91
[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 can run on Python 2.7.x and 3.x .
15
16
17 Showcase
18 ----------
19
20 .. figure:: https://github.com/DTVD/rainbowstream/blob/master/screenshot/rs.gif
21 :alt: gif
22
23 Install
24 -------
25
26 The quick way
27 ^^^^^^^^^^^^^
28
29 You will need Python and pip (2.7.x or 3.x).
30
31 .. code:: bash
32
33 sudo pip install rainbowstream
34 # Python 3 users: sudo pip3 install rainbowstream
35
36
37 The recommended way
38 ^^^^^^^^^^^^^^^^^^^
39
40 Use `virtualenv`_
41
42 .. code:: bash
43
44 virtualenv venv
45 # Python 3 users : use -p to specify your Python 3 localtion as below
46 # virtualenv -p /usr/bin/python3 venv
47 source venv/bin/activate
48 pip install rainbowstream
49
50
51 Usage
52 -----
53
54 The stream
55 ^^^^^^^^^^
56
57 Just type
58
59 .. code:: bash
60
61 rainbowstream
62
63 and see your stream.
64
65 I shipped a feature which can display **tweet's images directly on terminal**.
66 You can try it with:
67
68 .. code:: bash
69
70 rainbowstream -iot # Or rainbowstream --image-on-term
71
72 You also can change the config key ``IMAGE_ON_TERM`` to ``True`` inside the app
73 to enable above feature (see `config management`_ section).
74
75 In the first time you will be asked for authorization of Rainbow Stream
76 app at Twitter. Just click the “Authorize access” button and paste PIN
77 number to the terminal, the rainbow will start.
78
79 The interactive mode
80 --------------------
81
82 While your personal stream is continued, you are also ready to tweet,
83 search, reply, retweet… directly from console. Simply type “h” and hit
84 the Enter key to see the help.
85
86 Input is in interactive mode. It means that you can use arrow key to
87 move up and down history, tab-autocomplete or 2 tab to view available
88 suggestion. Input history from previous run is available as well.
89
90 Available commands are listed in `Read The Docs`_.
91
92 Theme customization
93 ------------------------
94
95 Rainbow Stream is shipped with some default themes.
96 You can either change theme by ``theme`` command or create your favorite one.
97
98 Theme’s screenshot:
99
100 - Monokai
101
102 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/Monokai.png
103 :alt: monokai
104
105 - Solarized
106
107 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/Solarized.png
108 :alt: solarized
109
110 - Tomorrow Night
111
112 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/TomorrowNight.png
113 :alt: tomorrownight
114
115 - Larapaste
116
117 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/larapaste.png
118 :alt: larapaste
119
120
121 For detaile information, see `theme usage and customization`_.
122
123 Bug and feature requests
124 ------------------------
125
126 Found a bug or a feature request ?
127 Please `create an issue`_ or contact me at `@dtvd88`_
128
129 Development
130 -----------
131
132 If you want to build a runnable version yourself, follow these simple
133 steps
134
135 - `Create your own Twitter Application`_
136 - Get your Twitter application’s API key and secret
137 - Fork this repo and clone in your system.
138 - Create a file ``consumer.py`` in `rainbowstream`_ folder with
139 following content
140
141 .. code:: python
142
143 # Consumer information
144 CONSUMER_KEY = 'APIKey' # Your Twitter application's API key
145 CONSUMER_SECRET = 'APISecret' # Your Twitter application's API secret
146
147 - Use pip to install in local
148
149 .. code:: bash
150
151 # cd to directory which contains setup.py (cloned directory)
152 virtualenv venv # Python3 users: use -p to specify python3
153 source venv/bin/activate
154 pip install -e .
155 which rainbowstream # /this-directory/venv/bin/rainbowstream
156 pip list | grep rainbowstream # rainbowstream (0.x.x, /this-directory)
157 # Remove ~/.rainbow_oauth if exists
158 rainbowstream # local version of rainbowstream
159
160
161 Contributing
162 ------------
163 I appreciate any help and support. Feel free to `fork`_ and `create a pull request`_.
164 You will be listed as contributor.
165
166 License
167 -------
168
169 Rainbow Stream are released under an MIT License. See LICENSE.txt for
170 details
171
172
173 .. _Python Twitter Tool: http://mike.verdone.ca/twitter/
174 .. _Twitter API: https://dev.twitter.com/docs/api/1.1
175 .. _create an issue: https://github.com/DTVD/rainbowstream/issues/new
176 .. _@dtvd88: https://twitter.com/dtvd88
177 .. _fork: https://github.com/DTVD/rainbowstream/fork
178 .. _create a pull request: https://github.com/DTVD/rainbowstream/compare/
179 .. _Read The Docs: http://rainbowstream.readthedocs.org/en/latest/
180 .. _config guide: https://github.com/DTVD/rainbowstream/blob/master/theme.md
181 .. _theme usage and customization: https://github.com/DTVD/rainbowstream/blob/master/theme.md
182 .. _Create your own Twitter Application: https://apps.twitter.com/app/new
183 .. _rainbowstream: https://github.com/DTVD/rainbowstream/tree/master/rainbowstream
184 .. _virtualenv: http://docs.python-guide.org/en/latest/dev/virtualenvs/
185 .. _config management: http://rainbowstream.readthedocs.org/en/latest/#the-interactive-mode