An interactive terminal interface for Zulip.
- Download this repository
git clone https://github.com/zulip/zulip-terminal
- Install the requirements:
cd zulip-terminal
sudo apt-get install python3-pip
pip3 install pipenv
pipenv --python 3
pipenv install
- Download the zuliprc configuration file to your computer:
- Log in to the Zulip server(e.g. chat.zulip.org or yourSubdomain.zulipchat.com, or your own development server).
- Go to Settings -> Your account
- Click on
Show/Change your API keyunder the API key section. - Download the
zuliprcfile by clicking Get API key. - Copy the file to a destination of your choice, e.g. to
~/zuliprc
- Run
Zulip-Terminal
pipenv shell
./run.py -c ~/zuliprc
| Command | Key Combination |
|---|---|
| Previous message | Up, k |
| Next message | Down, j |
| Scroll down | PgDn, J |
| Scroll up | PgUp, K |
| Reply to a message | r |
| Reply to an author | R |
| New stream message | c |
| Move back from Compose box to the message | esc |
| Narrow to a stream | S |
| Narrow to a topic | s |
| Send a message | Alt Enter |
Note: You can use arrows, home, end, Page up and Page down keys to move around in Zulip-Terminal.
- Install Dev Requirements:
pipenv install --dev
- To run all tests:
pytest
- To generate coverage report for tests:
pytest --cov-report html:cov_html --cov=./
- To run the linter:
pytest --pep8
- To check the type annotations, run:
./tools/run-mypy
- To open in debug mode:
./run.py -c ~/zuliprc -d
- To profile runtime:
./run.py -c ~/zuliprc --profile
Zulip Terminal is being build by an awesome community of Zulip.
To be a part of it and to contribute to the code, feel free to work on any issue or propose your idea on #zulip-terminal.
Do checkout our commit message guidelines and git guide.
Come meet us at Zulip.