snapshot of https://github.com/zulip/zulip.git @ 48c69911c7dd4e03b20552eb3bd77ad8151c1357 (2026-09-15)
Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled

This commit is contained in:
upstream-mirror
2026-09-15 15:05:30 +05:00
commit 64898b2c79
8999 changed files with 1757358 additions and 0 deletions

View File

@@ -0,0 +1,256 @@
Zulip connects communities of all kinds by making it easy to chat real-time or
async. Why are communities choosing Zulip over Discord, WhatsApp, Slack,
Facebook, and other apps you might consider? Zulip provides:
- A platform that helps [community members to
connect](#encourage-all-community-members-to-connect-real-time-or-async) and
[communities to grow](#grow-your-community).
- A comprehensive [moderation
toolkit](#a-moderation-toolkit-that-offers-everything-you-need).
- Control over [how to sign up](#as-public-as-you-want-it-to-be), and a [public
access option](#as-public-as-you-want-it-to-be).
- [An open-source platform](#open-source-platform-where-your-data-is-yours),
where your data is yours.
- [A free version, discounted pricing, and full
sponsorships](#free-version-discounted-pricing-and-full-sponsorships-available).
> The core of the Recurse Center is the community, and the core of our online
> community is Zulip… Switching to Zulip has turned out to be one of the best
> decisions we’ve made, and it’s impossible to imagine RC today without it. No
> other tool has a user experience that scales to a community of our size.
>
> — Nick Bergson-Shilcock, founder and CEO, [Recurse
> Center](https://www.recurse.com/); [learn how the Recurse Center uses
> Zulip](/case-studies/recurse-center/)
If you're considering Zulip for [an open-source project](/for/open-source/) or
[research collaboration](/for/research), check out our dedicated guides.
## Encourage all community members to connect, real-time or async
When people are online at the same time, a lightweight real-time chat experience
encourages active participation, and makes interactions feel more personal.
![](/static/images/landing-page/research/interactive_messaging_day_2.png)
But community participants are often online only for a short while each day, or
they drop by every week or two to check on what's happening. A forum-style
experience makes it easier for them to participate async.
<div class="text-image-in-row">
<p class="text-image-in-row-text">
With conversations organized by topic, Zulip combines the best of both worlds.
You get seamless real-time communication, with a chronological feed of messages
in each conversation, typing notifications, presence indicators, status emoji
— everything you might expect from a modern chat experience.
<br/><br/>
At the same time, community members can read one conversation at a time, so
it's easy to circle back to a topic hours later, the next day, or next week.
</p>
<img class="text-image-in-row-image" src="/static/images/landing-page/research/streams_and_topics_day.png" alt="Illustration of channels and topics list in Zulip">
</div>
> When we made the switch to [@zulip](https://twitter.com/zulip) a few months
> ago for chat, never in my wildest dreams did I imagine it was going to become
> the beating heart of the community, and so quickly. It&#39;s a game changer.
> 🧑‍💻🗨️👩‍💻
> — Dan Allen (@mojavelinux), [June 29,
2021](https://twitter.com/mojavelinux/status/1409702273400201217) &nbsp;
## A moderation toolkit that offers everything you need
Zulip's [moderation toolkit](/help/moderating-open-organizations) lets you:
- Skim the [combined message feed](/help/combined-feed) or [browse
conversations](/help/recent-conversations) to find where moderator attention
is needed.
- Keep discussions organized by [moving](/help/move-content-to-another-channel)
conversations, or [splitting](/help/move-content-to-another-topic) them when
they digress.
- Address bad behavior, for example by
[banning](/help/deactivate-or-reactivate-a-user) the offender and
[deleting](/help/delete-a-message) their messages.
- Fight spam in an open community, for example by [prohibiting disposable email
addresses](/help/restrict-account-creation#dont-allow-disposable-domains).
- [Restrict permissions](/help/restrict-permissions-of-new-members) for new
users.
Community members can [mute](/help/mute-a-user) anyone who's bothering them.
### Delegate moderation responsibilities
Permissions in Zulip can be granted to any combination of
[roles](/help/user-roles), [groups](/help/user-groups), and individual
[users](/help/introduction-to-users), so trusted community members can help
moderate. In larger communities, different people can
[administer](/help/configure-who-can-administer-a-channel) different channels.
## Grow your community
### Lots of activity, but no chaos
On Zulip, dozens of discussions can happen in parallel,
without getting in each other's way: Zulip's
[channels](/help/introduction-to-channels) and
[topics](/help/introduction-to-topics) create dedicated spaces for each
conversation.
Participants can ask a question or kick off a new discussion without having to worry
about interrupting.
> Zulip helped the FHIR community grow from a tiny group of dreamers to 500
> active users sending 6000 messages per month, all driving the creation of
> better healthcare standards. Zulip’s topic-based threading helps us manage
> simultaneous discussions with clarity, ensuring the right people can pay
> attention to the right messages. This makes our large-group discussion far
> more manageable than what we’ve experienced with Skype and Slack.
> — Grahame Grieve, founder, FHIR health care standards body
### Occasional participants welcome
Community members often have just a bit of time to participate, and folks
with the deepest expertise might also be the most busy. To stay connected with your
group, they need to quickly discover conversations that are interesting to them
when they drop by.
With traditional chat tools like Discord or WhatsApp, occasional participants
usually skim just the last few messages. If those messages don't spark interest,
they'll bounce for the day, and eventually stop coming by altogether.
Zulip's list of [recent conversations](/help/recent-conversations) offers a
quick overview of what's been happening in your community. It's easy to scan the
list of topics to find which ones you want to dive into.
> I had never engaged with the Changelog podcast community in Slack because I
> always got too overwhelmed with the linear flow of conversations. Topic based
> systems are such a fresh breath of air.
> — [Siddhartha Golu](https://www.siddharthagolu.com/),
> [Changelog](https://changelog.com/podcast) community member
### Many ways to participate
You can use Zulip from the browser, a [desktop app](/apps), and Android and iOS
mobile devices. If you prefer a [Terminal
app](https://github.com/zulip/zulip-terminal#readme) or just want to use it
[from your email](/help/using-zulip-via-email), you can do that too.
Zulip's apps offer lots of ways to customize your experience, including [dark
and light themes](/help/dark-theme), flexible [font size](/help/font-size) and
[line spacing](/help/line-spacing), configurable [notification
options](/help/channel-notifications), and much more. There are convenient
[keyboard shortcuts](/help/keyboard-shortcuts) for all the common actions.
Zulip's UI is translated into over two dozen [languages](/help/change-your-language).
## As public as you want it to be
Your community can require an invitation to join, or you can [allow anyone to
create an
account](/help/restrict-account-creation#set-whether-invitations-are-required-to-join).
You can use:
- [Private channels](/help/channel-permissions#private-channels) for
conversations only some community members should have access to (e.g.,
discussions among organizers).
- [Public channels](/help/channel-permissions#public-channels) for
conversations all community members can see.
- [Web-public channels](/help/channel-permissions#web-public-channels) for
discussions anyone on the internet should be able to read without logging in.
Posting always requires log in.
## Open-source platform, where your data is yours
Zulip is [100% open-source software](https://github.com/zulip), so you always
know what you're running. There are no ads, and we [don't sell your
data](https://zulip.com/policies/privacy#how-we-share-your-personal-data), or
[feed it to AI
models](https://blog.zulip.com/2024/05/23/self-hosting-keeps-your-private-data-out-of-ai-models/).
If you're looking for a simple, reliable SaaS solution, it only takes
a minute to [sign up for Zulip Cloud](https://zulip.com/new/). It's
professionally operated and is always up to date with the latest
features.
For full control over your data, follow our simple [installation
instructions](https://zulip.readthedocs.io/en/stable/production/install.html) to
host Zulip yourself. If you like, you can develop [custom
integrations](https://zulip.readthedocs.io/en/latest/webhooks/incoming-webhooks-overview.html)
and [features](https://zulip.readthedocs.io/en/stable/production/modify.html). If
your needs change, you can always move [from self-hosting to Zulip
Cloud](/help/move-to-zulip-cloud) or [the other
way](https://zulip.readthedocs.io/en/stable/production/export-and-import.html#import-into-a-new-zulip-server).
> We just moved the Lichess team (~100 persons) to <a
> href="https://twitter.com/zulip">@zulip</a>, and I&#39;m loving it. The topics
> in particular make it vastly superior to slack &amp; discord, when it comes to
> dealing with many conversations. Zulip is also open-source!
> — <a href="https://twitter.com/ornicar">Thibault D (@ornicar)</a>
## Free version, discounted pricing, and full sponsorships available
We sponsor over 1,500 organizations, and most non-business uses of Zulip are
eligible for discounted pricing or full sponsorship.
- **Zulip Cloud:** Many communities that are working towards the public good are
eligible for a fully sponsored [Zulip Cloud Standard plan](/plans/#cloud).
Other community groups pay a highly discounted rate, or use [Zulip Cloud
Free](/plans/#cloud). [Learn
more.](/help/zulip-cloud-billing#free-and-discounted-zulip-cloud-standard)
- **Self-hosting**: Communities and personal organizations (clubs,
groups of friends, volunteer groups, etc.) are eligible for our
[Community plan](/help/self-hosted-billing#free-community-plan) for
self-hosted organizations.
## Other apps you might consider
We’ve talked to hundreds of people about their experiences with
community chat. Here are some reasons why folks choose Zulip over
other apps you might consider for hosting your community.
> Zulip makes all my Slack and Discord communities feel tedious by comparison.
>
> — AJ Kerrigan, [Changelog](https://changelog.com/podcast) community member
### Group chat apps (WhatsApp, Telegram, Signal, Messenger, etc.)
Group chat apps can be convenient for small or low-activity groups,
but managing an active community quickly becomes unwieldy. Having more
than one conversation at a time in a single group chat feels chaotic,
and membership management is a big pain if you try to solve that by
using several group chats.
### Discord
In Discord, only the latest messages are easy to read and reply
to. Many less frequent participants will miss much of what's
happening in an active community.
You're also subjecting community members to intrusive in-app
advertising, even if they purchase Discord's paid plans.
### Slack
Like Discord, Slack doesn't work well for less frequent participants in an
active community. Additionally, on Slack's free plan, messages are hidden after
90 days, and are permanently deleted after a year. Slack's paid plans are
generally unaffordable for community use.
### Facebook
On Facebook, your relationship with your community is mediated by
algorithms: even replies to a user's own post are by default resorted
and partially hidden from them. From Meta's perspective, advertisers
are the customers, and your attention is the product being sold.
> I highly recommend Zulip to other communities… Slack is a no-go for many due
> to not being FLOSS, and I’m concerned about vendor lock-in if they were to
> stop being so generous. Slack’s threading model is much worse than Zulip’s
> IMO. The channels/topics flow is an incredibly intuitive way to keep track of
> everything that is going on.
>
> — RJ Ryan, Mixxx Developer