Zulip 9.0: Organized chat for distributed teams
![](/_astro/tabbott.Y0j5haym_1QpB1I.webp)
We’re excited to announce the release of Zulip Server 9.0, containing hundreds of new features and bug fixes!
Zulip
is an open-source team chat application designed for seamless remote and hybrid
work. With conversations
organized by topic, Zulip is
ideal for both live and asynchronous
communication. Zulip’s 100% open-source software is available as a
cloud service or a
self-hosted solution, and is used by
thousands of organizations around the world.
Zulip Server 9.0 is a major release, with over 5,300 new commits merged across the project since the 8.0 release in December 2023. Notable new features include a UI redesign with larger font size and line spacing, major improvements for composing messages, and much more!
A total of 124 people contributed commits to Zulip since the 8.0 release, bringing the project to over 1,450 code contributors. Zulip is remarkable for its number of major contributors, with 89 people who’ve contributed 100+ commits.
Huge thanks to everyone who’s contributed to Zulip over the last several months, whether by writing code and documentation, reporting issues, translating, supporting us financially, participating in discussions in the Zulip development community, or just suggesting ideas! We could not do this without the hundreds of people giving back to the Zulip community.
Project highlights
Today marks a release of the Zulip server and web application. We’d also like to share news and updates for the project as a whole since the 8.0 release last December:
Apps
We’ve been hard at work on Zulip’s next-generation mobile app for Android and iOS, built with Flutter. Users can look forward to redesigned apps and a faster, smoother experience.
We published a first community beta release last December, and have made 9 more releases since then, packed with features. There are over 1,700 commits in the latest release, and progress has been accelerating, with another full-time developer and three Google Summer of Code participants joining our mobile team this summer.
Later this year, we’ll announce a public beta here on the Zulip blog, so that you can try it out and see the new smoother experience for yourself. In the months after that, we’ll roll out the new app for everyone as the next version of the official Zulip mobile apps on both iOS and Android.
Meanwhile, we’ve continued updating the existing mobile apps for key Zulip Server 9.0 features you’ll read about below, as well as fixing selected bugs.
Zulip Terminal features new since last December include easy-to-read themes when using a transparent terminal, improved in-app help, the ability to compose and edit messages in external editors, and a prompt to avoid accidentally closing — and losing — the message you are composing.
Reviews
- An in-depth review of Zulip on HostingAdvice.com described it as “an excellent solution for teams collaborating across different time zones.”
- Zulip was recognized as a GetApp 2024 category leader for team communication. Huge thanks to our users for sharing their feedback and helping others find us!
Customer stories
-
In a new case study, the folks at GUT contact shared how they use Zulip to manage 1,000 employees spread across 3 countries. They love how easy it’s been to self-host the software and onboard their team.
“Zulip was quite easy to set up, and worked instantly. 1,000 people — no problem.”
— Erik Dittert, Head of IT at GUT contact
-
In another new case study, the InsurTech startup Semsee shared how Zulip has created breathing room for focused work and different work schedules for their distributed team.
“I don’t like going back to Slack now. It’s just not as efficient a way to organize communication.”
— James van Lommel, Director of Engineering at Semsee
-
The Lean Prover community has kicked off a multi-year collaboration on Zulip to formalize a proof of Fermat’s Last Theorem. We wish them the best of luck!
“The project will be run on the FLT channel on the Lean Zulip chat, a high-powered research forum where mathematicians and computer scientists can collaborate in real time, effortlessly posting code and mathematics using a thread and channel system which admirably handles the task of enabling many independent conversations to happen simultaneously.”
— Kevin Buzzard, announcing The Fermat’s Last Theorem Project
If using Zulip is making a difference for your organization, we’d love to hear about it!
Mentorship
Our community is fully committed to helping bring up the next generation of open-source contributors. 2024 is the ninth consecutive year that Zulip is participating in Google Summer of Code. Our 17 GSoC 2024 participants have contributed to many of the features described in this post!
“The mentorship I’ve received here is unparalleled in my life, it’s the best I’ve ever had.”
— Niloth, Google Summer of Code 2024 participant
Sponsorships
We proudly sponsor free Zulip Cloud Standard hosting for more than 1,500 open-source projects, non-profits, educational institutions, and academic research groups. All eligible organizations are encouraged to join this program, or sign up for the Community plan for self-hosted organizations.
“We are a public university that offers free education to 33,000 students across 13 cities in Brazil. We started using Zulip in early 2020, and it works perfectly for our needs. Zulip’s interface is simple and intuitive.”
— Rafael Cordeiro, head of IT at UTFPR
“As a research consortium spread across 14 locations in Germany, we use Zulip to communicate with each other in a low-threshold manner, without the overhead of email. Even with more than 200 users across different institutions, Zulip’s model of topic-labeled conversations makes it easy for our team members to keep up-to-date on what’s relevant, and work productively together.”
— Christina Schüttler, IT department Team Lead at University Hospital Erlangen
Release highlights
This section gives an overview of the major features and improvements in Zulip Server 9.0.
Alongside the major changes, this release contains hundreds of refinements beyond what can be described here. We believe that getting the little details right makes a big difference in a product that’s so central to people’s daily work. To make Zulip a joy to use, we relentlessly fine-tune the user experience, and consider it a priority to investigate and fix even minor bugs.
“Streams” renamed to “channels”
To better match terminology familiar from other apps, “streams” have been renamed to “channels” across the app in this release. The functionality remains exactly the same, and integrations do not need to be updated for this transition.
In-app feature announcements
To make it easier to discover what’s new in Zulip, important product changes are now announced via automated messages. These messages are sent to a “Zulip updates” topic in a channel selected by organization administrators. Users can read the announcements when it’s convenient, and chat about them in the same topic.
On self-hosted servers, these configurable notices are shipped with the Zulip server version that includes the new feature.
Improved reading experience
- To make reading more comfortable, Zulip has been redesigned with a larger font size and line spacing. Because personal preferences vary, the previous design remains available via the compact mode setting, and we plan to offer flexible controls for font size and line spacing in the next major release.
- For a more focused reading experience, you can now hide the left and right sidebars even in a full-size window. When the left sidebar is hidden, keyboard navigation lets you jump to the next unread topic or to your home view. The right sidebar has been redesigned to highlight users in the current channel or direct-message conversation.
- Messages and topic names now load much faster when you open the web or desktop app.
Improved experience for composing messages
- The compose box has been redesigned, with a cleaner, more modern look.
- When you start composing, the most recently edited draft for the conversation you are composing to now automatically appears in the compose box. You can always save a draft for later and start a new message.
- When you paste content into the compose box, Zulip will now do its best to
preserve the formatting, including links, bulleted lists, bold, italics, and
more. If you don’t need the formatting, you can undo it with
Ctrl+Z
, or paste as plain text. - Pasted channel and topic link URLs are now automatically converted into nicely formatted links.
- To quote and reply to part of a message, you can now select the part that you want to quote.
- You can now scroll down in all typeahead menus to see more matches for what you’ve typed so far.
More natural navigation
- For clarity and consistency, three key message views that show multiple conversations at once are now labeled “Combined feed” (previously “All messages”), “Channel feed”, and “Direct message feed”.
- To make it easier to read your messages topic-by-topic, channel links in the left sidebar now take you directly to the top topic in the channel. You can configure them to go to the channel feed instead (previously the only option).
- When you send a message to a conversation that you’re not viewing, Zulip now jumps you to that conversation, unless configured otherwise.
New and improved ways to find messages
- The main search has been
redesigned with pills for search filters, making it easier to use.
- You can use the new Reactions view to see how others have responded to your messages with emoji reactions. You can also search all messages with reactions.
- You can now search for messages in topics you follow, or see a feed of all messages (or just unread messages) in your followed topics.
- You can now filter direct message conversations in the left sidebar to show conversations that include a specific person.
Easier user onboarding
Zulip’s onboarding experience has been redesigned to introduce core Zulip concepts when they first become relevant.
- One-time modals now introduce the Inbox and
Recent conversations views.
Permanently dismissable banners explain complex situations, such as composing
a message
while viewing a different conversation,
when they come up.
- To introduce starred messages, your mentions, and other views, we added descriptions in the bar at the top, and to the message area when the view is empty.
- Introductory messages have been rewritten to better explain how conversations labeled with topics work in Zulip, including how to reply to an existing thread, start a new conversation, and move messages if they are out of place. To make intro messages easier to find, they are now starred and marked as unread for new users.
Design and usability improvements
- All the menus have been restyled, with a cleaner look, better icons, and
improved screen reader accessibility. Also, you can now
switch themes directly from your personal
menu.
- You can now configure how previews of animated images show the animation (always, when you hover over them, or never).
- To better show key information, desktop and mobile notifications now abbreviate quoted content.
- The message edit history view has been redesigned for visual consistency and ease of use.
- If you’d prefer not to see notifications when others type, you can now disable them.
Keyboard shortcuts
- A new
Alt+P
keyboard shortcut lets you toggle between edit mode and preview mode when composing or editing a message. - A new
Shift+V
keyboard shortcut offers quick access to read receipts.
Improved user management
-
A new combined user settings panel lets you manage users, deactivated users, and invitations in one place. You can now filter the list of users in your organization by role.
-
Profile pictures are now shown alongside user names in settings, making it easier to identify people at a glance. You can click on a name to open the user’s card.
-
You now have a lot of flexibility for configuring direct message permissions in your organization, with new settings for who can authorize and start direct message conversations. These settings are designed so that users can always respond to a direct message they’ve received.
-
You can now mark a custom profile field as required, to prompt everyone to fill it out.
-
You can require users to choose unique names in your organization.
-
When inviting users, you can now decide whether to receive a direct message when the invited user joins your organization. An updated design makes the UI for inviting new users easier to use.
-
You can now link to a user’s profile, to share it with someone else.
Improved channel administration
- Creating a channel is now a
smoother experience:
- Adding subscribers is now a separate step from configuring channel settings. Advanced settings are collapsed by default.
- When you create a channel, you are now taken directly there if you are a subscriber.
- Channel settings now show additional details, including when the channel was created.
Integrations
- There is now a convenient UI for configuring custom event filters for an integration. Documentation for over 60 integrations has been updated with simplified instructions.
- There are new integrations for Patreon and GitHub Sponsors, and the GitHub and Grafana integrations have been improved.
- We made extensive additions to Zulip’s API documentation, including handy navigation for real-time push event formats, articles on important concepts like thumbnailing, and new documentation for about a dozen previously documented API endpoints.
Server
- This release adds support for Ubuntu 24.04, and drops support for Ubuntu 20.04.
- The Zulip server now serves thumbnails of uploaded images for previews in the message feed, greatly reducing bandwidth usage for most Zulip installations. Images now load much faster for users in all Zulip apps.
- The Zulip server has always scaled well, but this release comes with several further efficiency improvements, which will make a big difference for organizations with thousands of user accounts.
Internationalization
Our community translators have been hard at work keeping up with the product as it evolves. This release features translations that cover the majority of non-error strings in 25 languages, including Gujarati for the first time.
Upgrading
We highly recommend upgrading to Zulip Server 9.0 to take advantage of the hundreds of improvements in this release and future security updates. We work hard to ensure that upgrades are smooth; you can upgrade by following the straightforward upgrade instructions. The upgrade notes section of the changelog details changes you’ll want to understand before upgrading.
Commercial support for server upgrades is available for installations that purchase a Business or Enterprise plan. For community support, everyone is welcome to drop by the Zulip development community.
Zulip Cloud is always up to date with the latest Zulip improvements.
Product roadmap
We’re continuing to focus on improving the design of the Zulip web app, and shipping next-generation mobile apps for Android and iOS.
We use project boards to publicly track goals for major server and mobile releases. These boards are updated on an ongoing basis as priorities evolve, and many community improvements integrated into Zulip are never specifically tracked as release goals.
Release schedule
This release is coming out about seven months after the Zulip Server 8.0 release last December. We are targeting a shorter interval for the next major release, which is expected in late 2024.
Community
If you appreciate Zulip, please recommend it to someone you know, for work or any other collaborative endeavor. If they say that Zulip won’t work for them, let us know why! You can email feedback@zulip.com, or post in the #feedback channel in the Zulip development community. Feedback from current and potential users is a vital part of how we design and prioritize improvements to Zulip.
Thanks again to the amazing global Zulip development community for making this possible!
— Tim Abbott, Zulip project leader
What follows is a summary of the commits contributed to Zulip during the 9.0 release cycle.
$ ./zulip/tools/total-contributions 8.0 9.0
616 Anders Kaseorg
458 Alex Vandiver
408 Chris Bobbe
400 Greg Price
388 Aman Agrawal
359 Lauryn Menard
313 Evy Kassirer
266 Karl Stolley
209 Sahil Batra
195 Tim Abbott
169 Prakhar Pratyush
166 Alya Abbott
165 Sayam Samal
117 Shubham Padia
111 Mateusz Mandera
104 Nehal Sharma
83 Varun Singh
61 afeefuddin
57 Kunal Sharma
56 Niloth P
47 Rohan Gudimetla
46 Kenneth Rodrigues
42 neiljp (Neil Pilgrim)
35 Rajesh Malviya
32 Sujal Shah
26 Kislay Verma
24 PieterCK
24 Tanmay Kumar
24 Sayed Mahmood Sayedi
24 Shu Chen
20 David Rosa
20 Pratik Chanda
19 Sanchit Sharma
19 Khader M Khudair
19 Zixuan James Li
17 Adnan Shabbir Husain
15 Sashank Ravipati
12 Lalit Kumar Singh
12 Nimish Medatwal
11 Shashank Singh
10 Mahhheshh
9 Bedo Khaled
9 CIC4DA
7 Aditya Kumar Kasaudhan
7 Pratik Solanki
7 ecxtacy
7 vighneshbhat9945
6 Robert Dyer
6 Temidayo32
6 codewithnick
5 Joydeep Bhattacharjee
5 sayyedarib
4 Chris Chua
3 Aditya Bajaj
3 John Lu
3 Rein Zustand (rht)
3 Sohaib-Ahmed21
3 Ujjawal Modi
3 swayam0322
3 Sagnik Mandal
2 ColeBurch
2 Dhruv Goyal
2 Eklavya Sharma
2 Pedro Almeida
2 Rinwaoluwa
2 abelaba
2 saisumith770
2 jrijul1201
2 neruyzo
1 Aditya Chaudhary
1 Afonso Azaruja
1 AfonsoOrmonde
1 Ajay Singh
1 Akarsh Jain
1 Akash Kumar Singh
1 Andrew
1 Angelica Ferlin
1 Anuja Patil
1 Artur Szcześniak
1 Charlie Marsh
1 Eeshan Garg
1 Emil
1 Evgenii
1 Gaurav Pandey
1 Gyan Dev
1 Isabela Pereira
1 Jason
1 Jerry Yang
1 Jose Corte
1 Joy Chen
1 Laura Hausmann
1 Niklas Fiekas
1 Olivier FAURE
1 Pietro Albini
1 Prathamesh Kurve
1 Riken Shah
1 Roshan Jagadish
1 Ryan Crisanti
1 Sahil Singh
1 Sayyed Arib Hussain
1 Sharif Naas
1 Tomas Fonseca
1 Tudor Stefan Pagu
1 Varun-Kolanu
1 Vector73
1 Vidhi Agrawal
1 ayush amawate
1 cherish2003
1 iks1
1 joaoafonso07
1 kota-karthik
1 luska44
1 mk0904
1 opmkumar
1 qx24680
1 somudas
1 Mehul-Kumar-27
1 Misha Brukman
1 enesonus
1 rsashank
1 LY
1 Sushmey
1 sreecharan7
1 Sean T. Allen
Commit range 8.0..9.0 corresponds to 2023-12-15 to 2024-07-25
4288 commits from zulip/zulip: 8.0..9.0
798 commits from zulip/zulip-flutter: 81d8b8ccab90..c17dd0efd192
137 commits from zulip/zulip-mobile: 38ca48a7b801..2217c858e207
91 commits from zulip/zulip-terminal: 585722a206e8..743db7d8d0ef
19 commits from zulip/zulip-desktop: 47cdd5fa8b3b..92260b0f97b5
12 commits from zulip/docker-zulip: 8e716c245f80..ef3a379351cf
11 commits from zulip/python-zulip-api: ad9b0e62a49d..e9d8ef3b272c
9 commits from zulip/zulipbot: d0bee679bf3c..3655e1f31e69
4 commits from zulip/github-actions-zulip: b62d5a0e48a4..e4c8f27c732b
2 commits from zulip/zulint: cd3b1e0586b0..a070f3a349bc
Excluded 0 commits authored by bots.
5371 total commits by 124 contributors between 8.0 and 9.0.