Merge branch 'use_arrow'
[rainbowstream.git] / README.rst
CommitLineData
3108149e 1Rainbow Stream\r
2--------------\r
3\r
d7fbaba9
O
4.. image:: http://img.shields.io/pypi/dm/rainbowstream.svg?style=flat\r
5 :target: https://pypi.python.org/pypi/rainbowstream\r
3216f3f4 6\r
d7fbaba9
O
7.. image:: http://img.shields.io/pypi/v/rainbowstream.svg?style=flat\r
8 :target: https://pypi.python.org/pypi/rainbowstream\r
c96321cc 9\r
3108149e 10Terminal-based Twitter Client. Realtime tweetstream, compose, search ,\r
11favorite … and much more fun directly from terminal.\r
12\r
80fa0f3a 13This package is built on the top of `Python Twitter Tool`_ and `Twitter API`_,\r
687567eb 14can run on Python 2.7.x and 3.x .\r
091aaddc 15\r
3108149e 16\r
456019d6 17Showcase\r
b13c6a0d 18--------\r
456019d6 19\r
bd48f980 20.. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/rs.gif\r
99087831 21 :alt: gif\r
997c0570 22\r
3108149e 23Install\r
24-------\r
25\r
45e6bb0d
O
26The quick way\r
27^^^^^^^^^^^^^\r
28\r
8e004f8d 29You will need Python and pip (2.7.x or 3.x).\r
3108149e 30\r
31.. code:: bash\r
32\r
fd9cd791 33 sudo pip install rainbowstream\r
8e004f8d 34 # Python 3 users: sudo pip3 install rainbowstream\r
b84845b9 35\r
b84845b9 36\r
45e6bb0d
O
37The recommended way\r
38^^^^^^^^^^^^^^^^^^^\r
39\r
40Use `virtualenv`_\r
fd9cd791
O
41\r
42.. code:: bash\r
43\r
b84845b9 44 virtualenv venv\r
45e6bb0d
O
45 # Python 3 users : use -p to specify your Python 3 localtion as below\r
46 # virtualenv -p /usr/bin/python3 venv\r
47 source venv/bin/activate\r
3108149e 48 pip install rainbowstream\r
49\r
80fa0f3a
O
50Troubleshooting\r
51^^^^^^^^^^^^^^^\r
52\r
c30d954c
O
53If you use Linux, you might need to install the python-dev package if you haven't already. \r
54For debian-based distros, these can be installed with\r
55\r
56.. code:: bash\r
57\r
58 sudo apt-get install python-dev\r
59\r
60Besides, Mac OSX Maverick with Xcode 5.1 has a well-known `clang unknown argument`_ problem with\r
80fa0f3a
O
61the ``Pillow`` package installation - a dependency of this app.\r
62If you are in this case, I recommend take a look at `Issue #10`_ and let me know if the workaround doesn't work for you.\r
45e6bb0d 63\r
3108149e 64Usage\r
65-----\r
66\r
67The stream\r
68^^^^^^^^^^\r
69\r
70Just type\r
71\r
72.. code:: bash\r
73\r
9f37426f 74 rainbowstream\r
3108149e 75\r
76and see your stream.\r
77\r
3216f3f4
O
78I shipped a feature which can display **tweet's images directly on terminal**.\r
79You can try it with:\r
4373c17c
O
80\r
81.. code:: bash\r
82\r
9f37426f 83 rainbowstream -iot # Or rainbowstream --image-on-term\r
4373c17c 84\r
99037620
O
85You also can change the config key ``IMAGE_ON_TERM`` to ``True`` inside the app \r
86to enable above feature, \r
87change ``IMAGE_SHIFT`` to set image's margin (relative to your terminal's width) \r
88or ``IMAGE_MAX_HEIGHT`` to control max height of every image.\r
89(see `config management`_ section).\r
89d0f21f 90\r
3108149e 91In the first time you will be asked for authorization of Rainbow Stream\r
92app at Twitter. Just click the “Authorize access” button and paste PIN\r
3216f3f4 93number to the terminal, the rainbow will start.\r
3108149e 94\r
95The interactive mode\r
9348f8ed 96^^^^^^^^^^^^^^^^^^^^\r
3108149e 97\r
98While your personal stream is continued, you are also ready to tweet,\r
99search, reply, retweet… directly from console. Simply type “h” and hit\r
f5677fb1 100the Enter key to see the help.\r
3108149e 101\r
102Input is in interactive mode. It means that you can use arrow key to\r
103move up and down history, tab-autocomplete or 2 tab to view available\r
f5677fb1 104suggestion. Input history from previous run is available as well.\r
3108149e 105\r
b913cd75 106Available commands are listed in `Read The Docs`_.\r
3108149e 107\r
b913cd75 108Theme customization\r
9348f8ed 109^^^^^^^^^^^^^^^^^^^\r
b913cd75 110\r
06302419 111Rainbow Stream is shipped with some default themes.\r
b913cd75
O
112You can either change theme by ``theme`` command or create your favorite one.\r
113\r
547283bf 114Theme’s screenshot:\r
19d6c002 115\r
06302419
O
116- Monokai\r
117\r
547283bf
O
118.. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/Monokai.png\r
119 :alt: monokai\r
19d6c002 120\r
06302419
O
121- Solarized\r
122\r
547283bf
O
123.. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/Solarized.png\r
124 :alt: solarized\r
125\r
98258022
O
126- Tomorrow Night\r
127\r
128.. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/TomorrowNight.png\r
129 :alt: tomorrownight\r
130\r
131- Larapaste\r
132\r
133.. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/themes/larapaste.png\r
134 :alt: larapaste\r
135\r
b913cd75 136For detaile information, see `theme usage and customization`_.\r
3108149e 137\r
9348f8ed 138\r
050c4214 139Bug and feature requests\r
36e1924e 140------------------------\r
3108149e 141\r
b84845b9 142Found a bug or a feature request ?\r
3216f3f4 143Please `create an issue`_ or contact me at `@dtvd88`_\r
3108149e 144\r
2d341029
O
145Development\r
146-----------\r
147\r
148If you want to build a runnable version yourself, follow these simple\r
149steps\r
150\r
151- `Create your own Twitter Application`_\r
152- Get your Twitter application’s API key and secret\r
a80d4179 153- Fork this repo and clone in your system.\r
b145ada0 154- Create a file ``consumer.py`` in `rainbowstream`_ folder with\r
2d341029
O
155 following content\r
156\r
157 .. code:: python\r
158\r
159 # Consumer information\r
160 CONSUMER_KEY = 'APIKey' # Your Twitter application's API key\r
161 CONSUMER_SECRET = 'APISecret' # Your Twitter application's API secret\r
162\r
163- Use pip to install in local\r
164\r
165 .. code:: bash\r
166\r
a80d4179 167 # cd to directory which contains setup.py (cloned directory)\r
2d341029
O
168 virtualenv venv # Python3 users: use -p to specify python3\r
169 source venv/bin/activate\r
170 pip install -e .\r
a80d4179
O
171 which rainbowstream # /this-directory/venv/bin/rainbowstream\r
172 pip list | grep rainbowstream # rainbowstream (0.x.x, /this-directory)\r
173 # Remove ~/.rainbow_oauth if exists\r
2d341029
O
174 rainbowstream # local version of rainbowstream\r
175\r
176\r
050c4214 177Contributing\r
36e1924e 178------------\r
050c4214
O
179I appreciate any help and support. Feel free to `fork`_ and `create a pull request`_.\r
180You will be listed as contributor.\r
181\r
3108149e 182License\r
183-------\r
184\r
185Rainbow Stream are released under an MIT License. See LICENSE.txt for\r
186details\r
187\r
188\r
189.. _Python Twitter Tool: http://mike.verdone.ca/twitter/\r
bade45d4 190.. _Twitter API: https://dev.twitter.com/docs/api/1.1\r
3108149e 191.. _create an issue: https://github.com/DTVD/rainbowstream/issues/new\r
3216f3f4 192.. _@dtvd88: https://twitter.com/dtvd88\r
050c4214
O
193.. _fork: https://github.com/DTVD/rainbowstream/fork\r
194.. _create a pull request: https://github.com/DTVD/rainbowstream/compare/\r
670e8049 195.. _Read The Docs: http://rainbowstream.readthedocs.org/en/latest/\r
b52327dc 196.. _config guide: https://github.com/DTVD/rainbowstream/blob/master/theme.md\r
b913cd75 197.. _theme usage and customization: https://github.com/DTVD/rainbowstream/blob/master/theme.md\r
2d341029 198.. _Create your own Twitter Application: https://apps.twitter.com/app/new\r
b145ada0 199.. _rainbowstream: https://github.com/DTVD/rainbowstream/tree/master/rainbowstream\r
45e6bb0d 200.. _virtualenv: http://docs.python-guide.org/en/latest/dev/virtualenvs/\r
98f3deaa 201.. _config management: http://rainbowstream.readthedocs.org/en/latest/#config-explanation\r
3ac213c1
O
202.. _clang unknown argument: http://kaspermunck.github.io/2014/03/fixing-clang-error/\r
203.. _Issue #10: https://github.com/DTVD/rainbowstream/issues/10\r