Go to file
Steve Howell 9986e41999 top left: Simplify markup for main links.
The following elements in the top left corner
are major components of our app:

    All messages
    Private messages
    Starred messages
    Mentions

We can now find them directly:

    $('.top_left_all_messages')
    $('.top_left_private_messages')
    $('.top_left_starred_messages')
    $('.top_left_mentions')

Before this, we had to build up complicated selectors
like below:

    exports.get_global_filter_li = function (filter_name) {
        var selector = "#global_filters li[data-name='"
            + filter_name + "']";
        return $(selector);
    };

I don't think any newbie would know to grep for "global_filter",
and I've seen a PR where somebody added specific markup here
to "Private messages" because they couldn't grok the old scheme.

Another thing to note is that we still have a "home-link"
class for "All messages", which overlapped with portico
code that had the same name.  (There were some inaccurate
comments in the code relating to the tab bar, but we don't
actually have a way to click to the home view in the tab
bar any more.)  I'll eliminate that cruft in another commit.

For this commit the four elements still have the
"global-filter" class, since there's some benefit to being
able to style them all as a group, although we should give
it a nicer name in a subsequent commit.

Most of this PR is basic search/replace, but I did add a
two-line helper: `top_left_corner.update_starred_count`
2019-01-30 13:53:20 -08:00
.circleci docs: Rename travis.md to continuous integration and add more content. 2018-12-29 15:26:36 -08:00
.github github: Suggest GIFs too in PR template. 2018-02-16 09:59:22 -08:00
.tx tx config: Update slug for mobile. 2018-06-17 17:32:25 -07:00
analytics billing: Do subscription management in-house instead of with Stripe Billing. 2018-12-22 13:39:30 -08:00
confirmation auth: Add an organization reactivation flow with admin confirmation. 2018-11-27 10:58:34 -08:00
corporate billing: Update get_seat_count to incorporate guests. 2019-01-30 10:35:01 -08:00
docs docs: Add changelog from 1.9.2 release. 2019-01-29 16:54:45 -08:00
frontend_tests top left: Simplify markup for main links. 2019-01-30 13:53:20 -08:00
pgroonga pgroonga: Upgrade to PGroonga 2 API. 2018-05-31 13:00:34 -07:00
puppet Revert "puppet: Increase process listening count for uwsgi." 2019-01-23 11:02:14 -08:00
requirements thumbor requirements: Upgrade virtualenv-clone from 0.4.0 to 0.5.1. 2019-01-30 09:50:43 -08:00
scripts scripts: Recommend apt update after enabling universe. 2019-01-26 12:29:05 -08:00
static top left: Simplify markup for main links. 2019-01-30 13:53:20 -08:00
stubs billing: Set idempotency key to None when running test suite. 2019-01-30 10:35:01 -08:00
templates top left: Simplify markup for main links. 2019-01-30 13:53:20 -08:00
tools run-dev: Make address-in-use errors more obvious. 2019-01-29 16:03:47 -08:00
zerver tests: Don't fail silently on 500 on logins. 2019-01-29 16:01:30 -08:00
zilencer profiling: Use mkstemp for profile.data filename. 2019-01-15 16:08:48 -08:00
zproject widgets: Remove ALLOW_SUB_MESSAGES flag and enable widgets by default. 2019-01-29 09:34:14 -08:00
zthumbor thumbor: Fix handling of upgrades from 1.8.0 and older. 2019-01-02 13:33:41 -08:00
.codecov.yml Try to avoid codecov spam. 2017-12-29 07:23:26 -05:00
.editorconfig editorconfig: Declare max line lengths for JS/Python code. 2018-08-08 09:48:17 -07:00
.eslintignore zulip_ops: Delete the long-disused `stats1.zulip.net` config and its dependencies. 2017-08-15 17:30:31 -07:00
.eslintrc.json user status: Add ability to edit status text. 2019-01-29 10:27:49 -08:00
.gitattributes gitattributes: Treat .ogg files as binary. 2018-04-27 09:59:19 -07:00
.gitignore mypy: Add basic support for invoking dmypy to run-mypy. 2018-05-21 22:41:08 -07:00
.gitlint lint: Allow revert commit messages in gitlint. 2018-02-13 09:21:01 -08:00
.isort.cfg tornado: Fix logging of tornado activity level. 2018-04-17 15:59:01 -07:00
.npmignore
.stylelintrc lint: Ban color names in CSS. 2019-01-22 15:33:18 -08:00
.travis.yml .travis.yml: Use /nonexistent instead of /tmp/nowhere. 2019-01-15 16:00:48 -08:00
CODE_OF_CONDUCT.md repository: Add CODE_OF_CONDUCT.md. 2017-06-14 18:43:08 -07:00
CONTRIBUTING.md docs: Increase highlighting of our linters in documentation. 2018-11-29 14:17:13 -08:00
Dockerfile-dev provision: Fix Docker development environment unicode issues. 2019-01-28 22:08:19 -08:00
Dockerfile-postgresql docker: Add PGroonga support to Postgresql Dockerfile. 2018-05-23 11:53:32 -07:00
LICENSE license: Move license application notice from LICENSE to NOTICE. 2018-10-02 12:04:44 -07:00
NOTICE license: Move license application notice from LICENSE to NOTICE. 2018-10-02 12:04:44 -07:00
README.md README: Normalize CircleCI badge styling. 2018-11-18 18:49:22 -08:00
Vagrantfile vagrant: Use id -g for finding a user's group. 2018-11-01 10:08:08 -07:00
manage.py tooling: Fix `manage.py` failing if `/etc/zulip/zulip.conf` exists. 2018-12-02 19:13:02 -08:00
mypy.ini docs: Add a warning about editing mypy stubs and the daemon. 2018-12-17 10:28:18 -08:00
package.json build_emoji: Add infrastructure for google-blob and twitter emojisets. 2018-08-31 11:52:24 -07:00
version.py version: Bump provision version for mass dependency upgrade. 2019-01-30 09:50:43 -08:00
yarn.lock build_emoji: Add infrastructure for google-blob and twitter emojisets. 2018-08-31 11:52:24 -07:00

README.md

Zulip overview

Zulip is a powerful, open source group chat application that combines the immediacy of real-time chat with the productivity benefits of threaded conversations. Zulip is used by open source projects, Fortune 500 companies, large standards bodies, and others who need a real-time chat system that allows users to easily process hundreds or thousands of messages a day. With over 300 contributors merging over 500 commits a month, Zulip is also the largest and fastest growing open source group chat project.

CircleCI branch Travis Build Status Coverage Status Mypy coverage GitHub release docs Zulip chat Twitter

Getting started

Click on the appropriate link below. If nothing seems to apply, join us on the Zulip community server and tell us what's up!

You might be interested in:

You may also be interested in reading our blog or following us on twitter. Zulip is distributed under the Apache 2.0 license.