Zulip 服务器和 Web 应用程序。开源团队聊天可帮助团队保持高效和专注。
Go to file
Anders Kaseorg e9cdf6f41c submessage: Accept todo submessage with extra_data: null.
Before commit 6df3ad251a (#24235),
get_extra_data_from_widget_type would initialize extra_data to null
for todo messages.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-10-22 10:26:21 -07:00
.github github_action: Mention PR where the endpoints were added. 2025-10-09 11:39:54 -07:00
.vscode vscode: Recommend remote development extension. 2021-11-03 16:03:46 -07:00
analytics ruff: Fix RUF059 Unpacked variable is never used. 2025-09-30 16:47:54 -07:00
api_docs api_docs: Add section on transcoded images. 2025-10-14 15:37:17 -07:00
confirmation ruff: Fix RUF059 Unpacked variable is never used. 2025-09-30 16:47:54 -07:00
corporate corporate: Add canonical URLs. 2025-10-21 14:25:16 -07:00
docs docs: Request showing touches/clicks in screencast videos. 2025-10-17 15:49:27 -07:00
locale i18n: Updated .po files for new strings. 2025-10-22 10:16:02 -04:00
patches dependencies: Upgrade JavaScript dependencies. 2025-07-22 14:19:56 -07:00
pgroonga migrations: Import BaseDatabaseSchemaEditor from its canonical module. 2023-03-05 14:46:28 -08:00
puppet kandra: Skip Grafana JWT role sync; we set roles in the UI. 2025-10-22 13:24:12 +00:00
scripts restart-server: All realm Tornado ports need a restart when they change. 2025-10-21 11:38:03 -07:00
starlight_help help: Open intro modal when checking out CZO. 2025-10-17 10:54:42 -07:00
static integration-docs: Add Git integration screenshot config and image. 2025-10-20 10:24:49 -07:00
templates hello: Replace level up logo with linux foundation logo. 2025-10-22 10:12:09 -07:00
tools semgrep: Lint unnecessary type=str in argparse. 2025-10-17 15:34:34 -07:00
web submessage: Accept todo submessage with extra_data: null. 2025-10-22 10:26:21 -07:00
zerver webhooks_gitea: Add tests and fixture for correct actor on PR close. 2025-10-21 13:23:31 -07:00
zilencer python: Elide type=str from argparse arguments. 2025-10-17 15:34:34 -07:00
zproject docs: Update links for renamed securing-your-zulip-server doc. 2025-10-13 10:06:31 -07:00
.codecov.yml codecov: Change threshold to use percentage syntax. 2019-07-20 14:37:04 -07:00
.codespellignore types: Add declarations for openapi-examples-validator. 2025-09-04 17:02:06 -07:00
.editorconfig check-openapi: Convert to TypeScript. 2025-09-04 17:02:06 -07:00
.gitattributes gitattributes: Diff SVGs as code. 2025-05-22 15:59:55 -07:00
.gitignore requirements: Migrate to uv. 2025-02-24 22:29:24 -08:00
.gitlint lint: Update line-length for commit message to 72 in gitlint. 2023-05-01 10:35:52 -07:00
.mailmap mailmap: Deduplicate a contributor's commits. 2025-08-13 15:36:48 -07:00
.npmignore Add proxy notes to new README.dev.md troubleshooting section. 2016-03-29 21:54:05 -07:00
.prettierignore marked: Rename to *.cjs. 2024-11-13 09:18:56 -08:00
.readthedocs.yaml install-uv: Upgrade uv from 0.6.3 to 0.6.6. 2025-03-14 17:31:50 -07:00
.sonarcloud.properties tools: Configure Zulip to be scannable by SonarCloud. 2020-06-24 12:41:17 -07:00
CODE_OF_CONDUCT.md docs: Fix wording in "Moderating the Zulip community". 2025-09-12 13:07:59 -07:00
CONTRIBUTING.md contributor docs: Better explain taking over abandoned issues. 2025-03-06 10:33:00 -08:00
Dockerfile-postgresql release-checklist: Prescribe docker build --pull. 2025-09-30 16:35:21 -07:00
eslint.config.js dependencies: Upgrade JavaScript dependencies. 2025-10-07 22:42:50 -07:00
LICENSE license: Move copyright notice from LICENSE to NOTICE. 2021-02-05 09:28:12 -08:00
manage.py manage: Delete custom PYTHONSTARTUP. 2025-06-12 09:28:00 -07:00
NOTICE docs: Bump copyright year. 2021-02-05 09:28:15 -08:00
package.json dependencies: Upgrade JavaScript dependencies. 2025-10-07 22:42:50 -07:00
pnpm-lock.yaml dependencies: Upgrade JavaScript dependencies. 2025-10-07 22:42:50 -07:00
pnpm-workspace.yaml starlight_help: Move help-beta over to starlight_help. 2025-08-08 11:59:29 -07:00
prettier.config.js prettier: Type-check Prettier configuration. 2025-09-10 09:44:44 -07:00
pyproject.toml timestamp: Use localized formatting in format_datetime_to_string. 2025-10-03 10:43:16 -07:00
README.md docs and portico: Update documentation word counts. 2025-10-09 15:11:42 -07:00
SECURITY.md docs: Update links for renamed securing-your-zulip-server doc. 2025-10-13 10:06:31 -07:00
stylelint.config.js stylelint: Type-check Stylelint configuration. 2025-09-10 09:44:44 -07:00
tsconfig.json tsconfig: Enable allowJs. 2025-09-10 09:44:44 -07:00
uv.lock timestamp: Use localized formatting in format_datetime_to_string. 2025-10-03 10:43:16 -07:00
Vagrantfile Vagrantfile: Forward port 9995 for /help dev server. 2025-09-03 16:22:29 -07:00
version.py emoji_names: Rebuild with emoji-datasource 16.0.0. 2025-10-07 22:42:50 -07:00

Zulip overview

Zulip is an open-source team collaboration tool with unique topic-based threading that combines the best of email and chat to make remote work productive and delightful. Fortune 500 companies, leading open source projects, and thousands of other organizations use Zulip every day. Zulip is the only modern team chat app that is designed for both live and asynchronous conversations.

Zulip is built by a distributed community of developers from all around the world, with 97+ people who have each contributed 100+ commits. With over 1,500 contributors merging over 500 commits a month, Zulip is the largest and fastest growing open source team chat project.

Come find us on the development community chat!

GitHub Actions build status coverage status Mypy coverage Ruff code style: prettier GitHub release docs Zulip chat Twitter GitHub Sponsors

Getting started

You may also be interested in reading our blog, and following us on Twitter and LinkedIn.

Zulip is distributed under the Apache 2.0 license.