diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
index fe4c888160..7dd4470c25 100644
--- a/CODE_OF_CONDUCT.md
+++ b/CODE_OF_CONDUCT.md
@@ -14,7 +14,7 @@ This isn't an exhaustive list of things that you can't do. Rather, take it
in the spirit in which it's intended --- a guide to make it easier to enrich
all of us and the technical communities in which we participate.
-## Expected Behavior
+## Expected behavior
The following behaviors are expected and requested of all community members:
@@ -29,7 +29,7 @@ The following behaviors are expected and requested of all community members:
* Community event venues may be shared with members of the public; be
respectful to all patrons of these locations.
-## Unacceptable Behavior
+## Unacceptable behavior
The following behaviors are considered harassment and are unacceptable
within the Zulip community:
@@ -53,7 +53,7 @@ within the Zulip community:
presentations.
* Advocating for, or encouraging, any of the behaviors above.
-## Reporting and Enforcement
+## Reporting and enforcement
Harassment and other code of conduct violations reduce the value of the
community for everyone. If someone makes you or anyone else feel unsafe or
@@ -95,7 +95,7 @@ behavior occurring outside the scope of community activities when such
behavior has the potential to adversely affect the safety and well-being of
community members.
-## License and Attribution
+## License and attribution
This Code of Conduct is adapted from the
[Citizen Code of Conduct](http://citizencodeofconduct.org/) and the
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index ed7628d82a..e1bf2e045d 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -299,7 +299,7 @@ for ZSoC, we'll contact you when the GSoC results are announced.
[gsoc-guide]: https://zulip.readthedocs.io/en/latest/overview/gsoc-ideas.html
[gsoc-faq]: https://developers.google.com/open-source/gsoc/faq
-## Zulip Outreach
+## Zulip outreach
**Upvoting Zulip**. Upvotes and reviews make a big difference in the public
perception of projects like Zulip. We've collected a few sites below
diff --git a/README.md b/README.md
index 12cf65bdcd..f2a040d68f 100644
--- a/README.md
+++ b/README.md
@@ -71,7 +71,7 @@ You might be interested in:
like Google Summer of Code.
You may also be interested in reading our [blog](https://blog.zulip.org/) or
-following us on [twitter](https://twitter.com/zulip).
+following us on [Twitter](https://twitter.com/zulip).
Zulip is distributed under the
[Apache 2.0](https://github.com/zulip/zulip/blob/master/LICENSE) license.
diff --git a/docs/contributing/accessibility.md b/docs/contributing/accessibility.md
index 055fdead23..dec4b7baab 100644
--- a/docs/contributing/accessibility.md
+++ b/docs/contributing/accessibility.md
@@ -53,7 +53,7 @@ sometimes report false positives as well. They are a useful aid in quickly
identifying potential problems and checking for regressions, but their
recommendations should not be blindly obeyed.
-## GitHub Issues
+## GitHub issues
Problems with Zulip's accessibility should be reported as
[GitHub issues](https://github.com/zulip/zulip/issues) with the "accessibility"
@@ -65,7 +65,7 @@ comment on the issue:
If you want to help make Zulip more accessible, here is a list of the
[currently open accessibility issues][accessibility-issues].
-## Additional Resources
+## Additional resources
For more information about making Zulip accessible to as many users as
possible, the following resources may be useful.
diff --git a/docs/contributing/code-reviewing.md b/docs/contributing/code-reviewing.md
index 7d71f33f85..9e1387ca7f 100644
--- a/docs/contributing/code-reviewing.md
+++ b/docs/contributing/code-reviewing.md
@@ -183,7 +183,7 @@ feel free to do that in a new commit, then push your branch to GitHub
and mention the branch in a comment on the pull request. That'll save
the maintainer time and get the PR merged quicker.
-## Additional Resources
+## Additional resources
We also strongly recommend reviewers to go through the following resources.
@@ -194,7 +194,7 @@ We also strongly recommend reviewers to go through the following resources.
* [Code Review - A consolidation of advice and stuff from the
sinternet](https://gist.github.com/porterjamesj/002fb27dd70df003646df46f15e898de)
article by James J. Porter
-* [Zulip Code of Conduct](../code-of-conduct.md)
+* [Zulip code of conduct](../code-of-conduct.md)
[code-style]: ../contributing/code-style.md
[commit-messages]: ../contributing/version-control.html#commit-messages
diff --git a/docs/contributing/gsod-ideas.md b/docs/contributing/gsod-ideas.md
index a817827542..1206469b0b 100644
--- a/docs/contributing/gsod-ideas.md
+++ b/docs/contributing/gsod-ideas.md
@@ -77,7 +77,7 @@ tools in the Zulip development environment). See
for details on our various existing documentation systems.
In part due to past work by a technical writer, Zulip has a
-well-documented and easy to setup development environment for a
+well-documented and easy-to-set-up development environment for a
project of its scope. Use
[our first-time Zulip developer guide](../overview/contributing.html#your-first-codebase-contribution)
to get your Zulip development environment set up. If you have any
@@ -202,12 +202,12 @@ proposal. It's also fine for you to come up with your own project
ideas.
For many of our projects, an important skill to develop is a good
-command of Git; read [our Git Guide](../git/overview.md) in full to
+command of Git; read [our Git guide](../git/overview.md) in full to
learn how to use it well. Of particular importance is mastering using
Git rebase so that you can construct commits that are readable,
are clearly correct and that explain why they are correct.
-**Project name**: REST API Documentation
+**Project name**: REST API documentation
Fill in the gaps in Zulip's
[REST API documentation](https://zulip.com/api). Zulip has a
diff --git a/docs/contributing/index.rst b/docs/contributing/index.rst
index 638d4d5685..2c09286049 100644
--- a/docs/contributing/index.rst
+++ b/docs/contributing/index.rst
@@ -1,5 +1,5 @@
#######################
-Code Contribution Guide
+Code contribution guide
#######################
.. toctree::
diff --git a/docs/contributing/version-control.md b/docs/contributing/version-control.md
index 84a3bb9716..6e4263919a 100644
--- a/docs/contributing/version-control.md
+++ b/docs/contributing/version-control.md
@@ -1,6 +1,6 @@
# Version control
-## Commit Discipline
+## Commit discipline
We follow the Git project's own commit discipline practice of "Each
commit is a minimal coherent idea". This discipline takes a bit of work,
@@ -83,7 +83,7 @@ you need to do a refactoring partway through writing the feature. When that
happens, we recommend you stash your partial feature, do the refactoring,
commit it, and then unstash and finish implementing your feature.
-## Commit Messages
+## Commit messages
First, check out
[these](https://github.com/zulip/zulip/commit/4869e1b0b2bc6d56fcf44b7d0e36ca20f45d0521)
diff --git a/docs/development/authentication.md b/docs/development/authentication.md
index b60a9c6b9c..d395d7288f 100644
--- a/docs/development/authentication.md
+++ b/docs/development/authentication.md
@@ -24,7 +24,7 @@ lower-case naming convention for that file.
Below, we document the procedure for each of the major authentication
methods supported by Zulip.
-### Email and Password
+### Email and password
Zulip's default EmailAuthBackend authenticates users by verifying
control over their email address, and then allowing them to set a
@@ -204,7 +204,7 @@ exactly what data is being used in the test without looking at other
resources. It also gives us more freedom to edit the development
environment directory without worrying about tests.
-## Two Factor Authentication
+## Two factor authentication
Zulip uses [django-two-factor-auth][0] as a beta 2FA integration.
diff --git a/docs/development/index.rst b/docs/development/index.rst
index 23b1bbe3a5..56a89f445e 100644
--- a/docs/development/index.rst
+++ b/docs/development/index.rst
@@ -1,5 +1,5 @@
#######################
-Development Environment
+Development environment
#######################
.. toctree::
@@ -7,7 +7,7 @@ Development Environment
Development environment installation
Recommended setup (Vagrant)
- Advanced Setup (non-Vagrant)
+ Advanced setup (non-Vagrant)
Using the development environment
Developing remotely
Authentication in the development environment
diff --git a/docs/development/setup-advanced.md b/docs/development/setup-advanced.md
index c575cf018a..6b09f3cb20 100644
--- a/docs/development/setup-advanced.md
+++ b/docs/development/setup-advanced.md
@@ -1,4 +1,4 @@
-# Advanced Setup (non-Vagrant)
+# Advanced setup (non-Vagrant)
Contents:
@@ -56,7 +56,7 @@ on using the Zulip development
environment](../development/setup-vagrant.html#step-4-developing),
ignoring the parts about `vagrant` (since you're not using it).
-## Installing directly on Windows 10 (Experimental)
+## Installing directly on Windows 10 (experimental)
We will be using Microsoft's new feature [WSL
2](https://docs.microsoft.com/en-us/windows/wsl/wsl2-about) for
diff --git a/docs/development/setup-vagrant.md b/docs/development/setup-vagrant.md
index 61d48de8d3..a999ca1beb 100644
--- a/docs/development/setup-vagrant.md
+++ b/docs/development/setup-vagrant.md
@@ -12,18 +12,18 @@ all related services will run.
Contents:
* [Requirements](#requirements)
* [Step 0: Set up Git & GitHub](#step-0-set-up-git-github)
-* [Step 1: Install Prerequisites](#step-1-install-prerequisites)
+* [Step 1: Install prerequisites](#step-1-install-prerequisites)
* [Step 2: Get Zulip code](#step-2-get-zulip-code)
* [Step 3: Start the development environment](#step-3-start-the-development-environment)
* [Step 4: Developing](#step-4-developing)
-* [Troubleshooting and Common Errors](#troubleshooting-and-common-errors)
+* [Troubleshooting and common errors](#troubleshooting-and-common-errors)
* [Specifying an Ubuntu mirror](#specifying-an-ubuntu-mirror)
* [Specifying a proxy](#specifying-a-proxy)
* [Customizing CPU and RAM allocation](#customizing-cpu-and-ram-allocation)
**If you encounter errors installing the Zulip development
-environment,** check [Troubleshooting and Common
-Errors](#troubleshooting-and-common-errors). If that doesn't help,
+environment,** check [troubleshooting and common
+errors](#troubleshooting-and-common-errors). If that doesn't help,
please visit [#provision
help](https://chat.zulip.org/#narrow/stream/21-provision-help) in the
[Zulip development community
@@ -63,13 +63,13 @@ docs.
You can skip this step if you already have Git, GitHub, and SSH access
to GitHub working on your machine.
-Follow our [Git Guide][set-up-git] in order to install Git, set up a
+Follow our [Git guide][set-up-git] in order to install Git, set up a
GitHub account, create an SSH key to access code on GitHub
efficiently, etc. Be sure to create an ssh key and add it to your
GitHub account using
[these instructions](https://help.github.com/en/articles/generating-an-ssh-key).
-### Step 1: Install Prerequisites
+### Step 1: Install prerequisites
Jump to:
@@ -87,7 +87,7 @@ Jump to:
Fusion][vmware-fusion-dl] with the [VMWare Fusion Vagrant
plugin][vagrant-vmware-fusion-dl].)
-Now you are ready for [Step 2: Get Zulip Code.](#step-2-get-zulip-code).
+Now you are ready for [Step 2: Get Zulip code](#step-2-get-zulip-code).
#### Ubuntu
@@ -142,7 +142,7 @@ sudo systemctl enable docker
sudo systemctl start docker
```
-Now you are ready for [Step 2: Get Zulip Code.](#step-2-get-zulip-code)
+Now you are ready for [Step 2: Get Zulip code](#step-2-get-zulip-code).
#### Debian
@@ -200,7 +200,7 @@ true
```
If you see `true`, you are ready for [Step 2: Get Zulip
-Code.](#step-2-get-zulip-code)
+code](#step-2-get-zulip-code).
Otherwise, if the above command prints `false` or nothing at all, then symlinks
have not been enabled.
@@ -223,7 +223,7 @@ $ echo $CYGWIN
winsymlinks:native
```
-Now you are ready for [Step 2: Get Zulip Code.](#step-2-get-zulip-code)
+Now you are ready for [Step 2: Get Zulip code](#step-2-get-zulip-code).
(Note: The **GitHub Desktop client** for Windows has a bug where it
will automatically set `git config core.symlink false` on a repository
@@ -232,7 +232,7 @@ development environment, because we use symbolic links. For that
reason, we recommend avoiding using GitHub Desktop client to clone
projects and to instead follow these instructions exactly.)
-### Step 2: Get Zulip Code
+### Step 2: Get Zulip code
1. In your browser, visit
and click the `fork` button. You will need to be logged in to GitHub to
@@ -268,7 +268,7 @@ Checking out files: 100% (1912/1912), done.`
```
Now you are ready for [Step 3: Start the development
-environment.](#step-3-start-the-development-environment)
+environment](#step-3-start-the-development-environment).
### Step 3: Start the development environment
@@ -392,7 +392,7 @@ should see something like:
2016-05-04 18:21:57,819 INFO 127.0.0.1 GET 200 209ms (db: 7ms/2q) /login/ (unauth@zulip via ?)
```
-Now you're ready for [Step 4: Developing.](#step-4-developing)
+Now you're ready for [Step 4: Developing](#step-4-developing).
### Step 4: Developing
@@ -424,10 +424,10 @@ there.
See [Logging](../subsystems/logging.md) for further details on the run-dev.py console
output.
-#### Committing and pushing changes with git
+#### Committing and pushing changes with Git
-When you're ready to commit or push changes via git, you will do this by
-running git commands in Terminal (macOS/Ubuntu) or Git BASH (Windows) in the
+When you're ready to commit or push changes via Git, you will do this by
+running Git commands in Terminal (macOS/Ubuntu) or Git BASH (Windows) in the
directory where you cloned Zulip on your main machine.
If you're new to working with Git/GitHub, check out our [Git & GitHub
@@ -528,7 +528,7 @@ $ vagrant ssh
$ ./tools/run-dev.py
```
-### Next Steps
+### Next steps
Next, read the following to learn more about developing for Zulip:
@@ -538,7 +538,7 @@ Next, read the following to learn more about developing for Zulip:
run the full test suite against any branches you push to your fork,
which can help you optimize your development workflow).
-### Troubleshooting and Common Errors
+### Troubleshooting and common errors
Below you'll find a list of common errors and their solutions. Most
issues are resolved by just provisioning again (by running
diff --git a/docs/development/using.md b/docs/development/using.md
index 95be144bf7..beaa3ec041 100644
--- a/docs/development/using.md
+++ b/docs/development/using.md
@@ -1,4 +1,4 @@
-Using the Development Environment
+Using the development environment
=================================
This page describes the basic edit/refresh workflows for working with
diff --git a/docs/documentation/index.rst b/docs/documentation/index.rst
index 8e2d7d3385..9bb3fe9f7c 100644
--- a/docs/documentation/index.rst
+++ b/docs/documentation/index.rst
@@ -1,5 +1,5 @@
#####################
-Writing Documentation
+Writing documentation
#####################
.. toctree::
diff --git a/docs/documentation/user.md b/docs/documentation/user.md
index 7445c520ac..ef4c2ce49f 100644
--- a/docs/documentation/user.md
+++ b/docs/documentation/user.md
@@ -230,7 +230,7 @@ All tips/warnings should appear inside tip/warning blocks. There
should be only one tip/warning inside each block, and they usually
should be formatted as a continuation of a numbered step.
-### Tab Switcher
+### Tab switcher
Our Markdown processor supports easily creating a tab switcher widget
design to easily show the instructions for different
diff --git a/docs/git/cheat-sheet.md b/docs/git/cheat-sheet.md
index 086e5ed567..18b2486ad7 100644
--- a/docs/git/cheat-sheet.md
+++ b/docs/git/cheat-sheet.md
@@ -1,8 +1,8 @@
-# Git Cheat Sheet
+# Git cheat sheet
See also [fixing commits][fix-commit]
-## Common Commands
+## Common commands
- add
- `git add foo.py`
@@ -53,7 +53,7 @@ See also [fixing commits][fix-commit]
- status
- `git status`
-## Detailed Cheat Sheet
+## Detailed cheat sheet
- add
- `git add foo.py`: add `foo.py` to the staging area
diff --git a/docs/git/fixing-commits.md b/docs/git/fixing-commits.md
index 7338e01e5f..40a2880e84 100644
--- a/docs/git/fixing-commits.md
+++ b/docs/git/fixing-commits.md
@@ -1,4 +1,4 @@
-# Fixing Commits
+# Fixing commits
This is mostly from
[here](https://help.github.com/en/articles/changing-a-commit-message#rewriting-the-most-recent-commit-message).
diff --git a/docs/git/index.rst b/docs/git/index.rst
index 67517d3856..6853d8b19a 100644
--- a/docs/git/index.rst
+++ b/docs/git/index.rst
@@ -1,21 +1,21 @@
#########
-Git Guide
+Git guide
#########
.. toctree::
:maxdepth: 3
- Quick Start
+ Quick start
Set up Git
- Zulip-specific-tools
+ Zulip-specific tools
How Git is different
Important Git terms
Get Zulip code
Working copies
Using Git as you work
- Pull Requests
+ Pull requests
Collaborate
Fixing commits
Reviewing changes
Get and stay out of trouble
- Git Cheat Sheet
+ Git cheat sheet
diff --git a/docs/git/overview.md b/docs/git/overview.md
index bbbdcb7aef..c06d255436 100644
--- a/docs/git/overview.md
+++ b/docs/git/overview.md
@@ -1,4 +1,4 @@
-# Quick start: How Zulip uses Git and GitHub
+# Quick start: how Zulip uses Git and GitHub
This quick start provides a brief overview of how Zulip uses Git and GitHub.
diff --git a/docs/git/the-git-difference.md b/docs/git/the-git-difference.md
index 53441e3408..304eb7f423 100644
--- a/docs/git/the-git-difference.md
+++ b/docs/git/the-git-difference.md
@@ -8,14 +8,14 @@ from *Pro Git* by Scott Chacon and Ben Straub.
Here are the top things to know:
-- **Git works on snapshots:** Unlike other version control systems (e.g.,
+- **Git works on snapshots.** Unlike other version control systems (e.g.,
Subversion, Perforce, Bazaar), which track files and changes to those files
made over time, Git tracks *snapshots* of your project. Each time you commit
or otherwise make a change to your repository, Git takes a snapshot of your
project and stores a reference to that snapshot. If a file hasn't changed,
Git creates a link to the identical file rather than storing it again.
-- **Most Git operations are local:** Git is a distributed version control
+- **Most Git operations are local.** Git is a distributed version control
system, so once you've cloned a repository, you have a complete copy of that
repository's *entire history*. Staging, committing, branching, and browsing
history are all things you can do locally without network access and without
@@ -56,7 +56,7 @@ Here are the top things to know:
changes but have not yet been marked for inclusion in the next commit; they
have not been added to the index.
-- **Git commit workflow is as follows:** Edit files in your *working tree*. Add
+- **Git commit workflow is as follows.** Edit files in your *working tree*. Add
to the *index* (that is *stage*) with `git add`. *Commit* to the HEAD of the
current branch with `git commit`.
diff --git a/docs/git/working-copies.md b/docs/git/working-copies.md
index d31a2f4c86..a8cf00cb53 100644
--- a/docs/git/working-copies.md
+++ b/docs/git/working-copies.md
@@ -41,7 +41,7 @@ names.
- **origin**: This is your fork.
- **upstream**: This is the official Zulip repo.
-## Relevant git commands
+## Relevant Git commands
The following commands are useful for moving commits between
working copies:
diff --git a/docs/git/zulip-tools.md b/docs/git/zulip-tools.md
index 646a8d33ff..036b6441ea 100644
--- a/docs/git/zulip-tools.md
+++ b/docs/git/zulip-tools.md
@@ -3,7 +3,7 @@
This article documents several useful tools that can save you a lot of
time when working with Git on the Zulip project.
-## Set up git repo script
+## Set up Git repo script
**Extremely useful**. In the `tools` directory of
[zulip/zulip][github-zulip-zulip] you'll find a bash script
diff --git a/docs/index.rst b/docs/index.rst
index baf3741109..2c3509dba6 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -32,14 +32,14 @@ installation `_ or `Contributing to Zulip
Contents:
* :ref:`Overview `
-* :ref:`Zulip in Production `
-* :ref:`Development Environment `
-* :ref:`Developer Tutorials `
-* :ref:`Git Guide `
-* :ref:`Code Contribution Guide `
-* :ref:`Code Testing `
-* :ref:`Subsystem Documentation `
-* :ref:`Writing Documentation `
+* :ref:`Zulip in production `
+* :ref:`Development environment `
+* :ref:`Developer tutorials `
+* :ref:`Git guide `
+* :ref:`Code contribution guide `
+* :ref:`Code testing `
+* :ref:`Subsystem documentation `
+* :ref:`Writing documentation `
* :ref:`Translating `
.. _overview:
diff --git a/docs/overview/architecture-overview.md b/docs/overview/architecture-overview.md
index 4ca10fd153..ce22b6a907 100644
--- a/docs/overview/architecture-overview.md
+++ b/docs/overview/architecture-overview.md
@@ -1,7 +1,7 @@
Zulip architectural overview
============================
-Key Codebases
+Key codebases
-------------
The main Zulip codebase is at . It
diff --git a/docs/overview/changelog.md b/docs/overview/changelog.md
index ca6ec3b785..6e0ecbad0d 100644
--- a/docs/overview/changelog.md
+++ b/docs/overview/changelog.md
@@ -1,4 +1,4 @@
-# Version History
+# Version history
All notable changes to the Zulip server are documented in this file.
@@ -16,7 +16,7 @@ in bursts.
- Redesigned the top navbar/search area to be much cleaner and show
useful data like subscriber counts and stream descriptions in
default views.
-- Added a new "Recent Topics" widget, which lets one browse recent
+- Added a new "recent topics" widget, which lets one browse recent
and ongoing conversations at a glance. We expect this widget to
replace "All messages" as the default view in Zulip in the
next major release.
diff --git a/docs/overview/directory-structure.md b/docs/overview/directory-structure.md
index 31989759e9..a8024c0386 100644
--- a/docs/overview/directory-structure.md
+++ b/docs/overview/directory-structure.md
@@ -43,7 +43,7 @@ paths will be familiar to Django developers.
-------------------------------------------------------------------
-### HTML Templates
+### HTML templates
See [our docs](../subsystems/html-css.md) for details on Zulip's
templating systems.
@@ -126,7 +126,7 @@ Django context (i.e. with database access).
---------------------------------------------------------
-### API and Bots
+### API and bots
* See the [Zulip API repository](https://github.com/zulip/python-zulip-api).
Zulip's Python API bindings, a number of Zulip integrations and
@@ -163,7 +163,7 @@ This is used to deploy essentially all configuration in production.
-----------------------------------------------------------------------
-### Jinja2 Compatibility Files
+### Jinja2 compatibility files
* `zproject/jinja2/__init__.py` Jinja2 environment.
diff --git a/docs/overview/gsoc-ideas.md b/docs/overview/gsoc-ideas.md
index 0cf9f6ed62..60eb3f0e32 100644
--- a/docs/overview/gsoc-ideas.md
+++ b/docs/overview/gsoc-ideas.md
@@ -518,7 +518,7 @@ we have enough strong applicants.
well. You'll need to learn React Native as part of getting
involved. There's tons of good online tutorials, courses, etc.
-### Electron Desktop app
+### Electron desktop app
Code:
[Our cross-platform desktop app written in JavaScript on Electron](https://github.com/zulip/zulip-desktop).
@@ -528,7 +528,7 @@ Experts: Akash Nimare, Abhighyan Khaund
application](https://github.com/zulip/zulip-desktop). There's
plenty of feature/UI work to do, but focus areas for us include
things to (1) improve the release process for the app, using
- automated testing, typescript, etc. and (2) polish the UI. Browse
+ automated testing, TypeScript, etc. and (2) polish the UI. Browse
the open issues and get involved!
**Skills required**: JavaScript experience, Electron experience. You
diff --git a/docs/overview/roadmap.md b/docs/overview/roadmap.md
index 99d5f82dac..731ebc69e3 100644
--- a/docs/overview/roadmap.md
+++ b/docs/overview/roadmap.md
@@ -1,4 +1,4 @@
-# The Zulip Roadmap
+# The Zulip roadmap
Zulip has received a great deal of interest and attention since it was
released as free and open source software by Dropbox. That attention
diff --git a/docs/production/index.rst b/docs/production/index.rst
index fe554358a6..ad9bf3662b 100644
--- a/docs/production/index.rst
+++ b/docs/production/index.rst
@@ -1,5 +1,5 @@
###################
-Zulip in Production
+Zulip in production
###################
.. toctree::
diff --git a/docs/production/install-existing-server.md b/docs/production/install-existing-server.md
index eb3d5d6718..39586c7729 100644
--- a/docs/production/install-existing-server.md
+++ b/docs/production/install-existing-server.md
@@ -2,7 +2,7 @@
:orphan:
```
-# Production Installation on Existing Server
+# Production installation on existing server
Here are some tips for installing the latest release Zulip on a
production server running Debian or Ubuntu. The Zulip installation
diff --git a/docs/production/install.md b/docs/production/install.md
index 54955cccc0..dd4582f7fa 100644
--- a/docs/production/install.md
+++ b/docs/production/install.md
@@ -1,4 +1,4 @@
-# Production Installation
+# Production installation
You'll need an Ubuntu or Debian system that satisfies
[the installation requirements](../production/requirements.md). Alternatively,
diff --git a/docs/production/mobile-push-notifications.md b/docs/production/mobile-push-notifications.md
index dd5a475191..30a59eebaa 100644
--- a/docs/production/mobile-push-notifications.md
+++ b/docs/production/mobile-push-notifications.md
@@ -157,10 +157,10 @@ Zulip open source project understand how many people are using Zulip,
and help us allocate resources towards supporting self-hosted
installations.
-Our use of these statistics is governed by the same ToS and
-Privacy Policy that covers the Mobile Push Notifications Service
-itself. If your organization does not want to submit these
-statistics, you can disable this feature at any time by setting
+Our use of these statistics is governed by the same Terms of Service
+and Privacy Policy that covers the Mobile Push Notifications Service
+itself. If your organization does not want to submit these statistics,
+you can disable this feature at any time by setting
`SUBMIT_USAGE_STATISTICS=False` in `/etc/zulip/settings.py`.
## Sending push notifications directly from your server
diff --git a/docs/production/multiple-organizations.md b/docs/production/multiple-organizations.md
index c510af9e85..c985bdb0b8 100644
--- a/docs/production/multiple-organizations.md
+++ b/docs/production/multiple-organizations.md
@@ -50,7 +50,7 @@ For servers hosting a large number of organizations, like
= True` in `/etc/zulip/settings.py` so that the homepage for the
server is a copy of the Zulip homepage.
-### SSL Certificates
+### SSL certificates
You'll need to install an SSL certificate valid for all the
(sub)domains you're using your Zulip server with. You can get an SSL
@@ -125,7 +125,7 @@ like "Notification Bot", "Welcome Bot", etc. exist. In the future,
we're considering moving these bots to exist in every realm, so that
we wouldn't need the system realm anymore.
-### Migrating / Troubleshooting
+### Migrating / troubleshooting
If you're migrating from a configuration using the root domain to one
with realms hosted on subdomains, be sure to clear cookies in any
diff --git a/docs/production/postgres.md b/docs/production/postgres.md
index 01b8a3687a..0673c88d2d 100644
--- a/docs/production/postgres.md
+++ b/docs/production/postgres.md
@@ -139,7 +139,7 @@ with this approach, since it does bypass some of the work that
pg_ctlcluster does.
-#### Postgres Vacuuming alerts
+#### Postgres vacuuming alerts
The `autovac_freeze` postgres alert from `check_postgres` is
particularly important. This alert indicates that the age (in terms
diff --git a/docs/production/requirements.md b/docs/production/requirements.md
index 9122491ac4..19d1d5cbe7 100644
--- a/docs/production/requirements.md
+++ b/docs/production/requirements.md
@@ -1,4 +1,4 @@
-# Requirements and Scalability
+# Requirements and scalability
To run a Zulip server, you will need:
* A dedicated machine or VM
@@ -26,7 +26,7 @@ disregard our advice and use a server that hosts other services, we
can't support you, but
[we do have some notes on issues you'll encounter](install-existing-server.md).
-#### Operating System
+#### Operating system
Ubuntu 20.04 Focal, 18.04 Bionic, and Debian 10 Buster are supported
for running Zulip in production. 64-bit is recommended. We recommend
@@ -48,7 +48,7 @@ sudo apt update
https://help.ubuntu.com/community/Repositories/Ubuntu
[enable-universe]: https://help.ubuntu.com/community/Repositories/CommandLine#Adding_the_Universe_and_Multiverse_Repositories
-#### Hardware Specifications
+#### Hardware specifications
* CPU and Memory: For installations with 100+ users you'll need a
minimum of **2 CPUs** and **4GB RAM**. For installations with fewer
@@ -66,7 +66,7 @@ https://help.ubuntu.com/community/Repositories/Ubuntu
See our [documentation on scalability](#scalability) below for advice
on hardware requirements for larger organizations.
-#### Network and Security Specifications
+#### Network and security specifications
* Incoming HTTPS access (usually port 443, though this is
[configurable](../production/deployment.html#using-an-alternate-port))
@@ -96,7 +96,7 @@ on hardware requirements for larger organizations.
## Credentials needed
-#### SSL Certificate
+#### SSL certificate
Your Zulip server will need an SSL certificate for the domain name it
uses. For most Zulip servers, the recommended (and simplest) way to
diff --git a/docs/production/security-model.md b/docs/production/security-model.md
index d80a2d9374..310f0a5f44 100644
--- a/docs/production/security-model.md
+++ b/docs/production/security-model.md
@@ -1,4 +1,4 @@
-# Security Model
+# Security model
This section attempts to document the Zulip security model. It likely
does not cover every issue; if there are details you're curious about,
@@ -25,7 +25,7 @@ announcement).
entire message history, and thus someone with control over the
server has access to that data as well.
-## Encryption and Authentication
+## Encryption and authentication
* Traffic between clients (web, desktop and mobile) and the Zulip is
encrypted using HTTPS. By default, all Zulip services talk to each
@@ -90,7 +90,7 @@ strength allowed is controlled by two settings in
[zxcvbn-paper]: https://www.usenix.org/system/files/conference/usenixsecurity16/sec16_paper_wheeler.pdf
[Bon12]: http://ieeexplore.ieee.org/document/6234435/
-## Messages and History
+## Messages and history
* Zulip message content is rendered using a specialized Markdown
parser which escapes content to protect against cross-site scripting
@@ -132,7 +132,7 @@ strength allowed is controlled by two settings in
[Configuring message editing and deletion](https://zulip.com/help/configure-message-editing-and-deletion)
for more details.
-## Users and Bots
+## Users and bots
* There are several types of users in a Zulip organization: Organization
Owners, Organization Administrators, Members (normal users), Guests,
diff --git a/docs/production/settings.md b/docs/production/settings.md
index 9b04ba821f..7fd16170bb 100644
--- a/docs/production/settings.md
+++ b/docs/production/settings.md
@@ -21,7 +21,7 @@ su zulip -c '/home/zulip/deployments/current/scripts/restart-server'
## Specific settings
-### Domain and Email settings
+### Domain and email settings
`EXTERNAL_HOST`: the user-accessible domain name for your Zulip
installation (i.e., what users will type in their web browser). This
@@ -34,7 +34,7 @@ maintaining this installation and who will get support and error
emails. If you passed `--email` to the installer, this will be
prefilled with that value.
-### Authentication Backends
+### Authentication backends
`AUTHENTICATION_BACKENDS`: Zulip supports a wide range of popular
options for authenticating users to your server, including Google
diff --git a/docs/production/ssl-certificates.md b/docs/production/ssl-certificates.md
index 222327e408..d01e6ae9ed 100644
--- a/docs/production/ssl-certificates.md
+++ b/docs/production/ssl-certificates.md
@@ -1,4 +1,4 @@
-# Installing SSL Certificates
+# Installing SSL certificates
To keep your communications secure, Zulip runs over HTTPS only.
You'll need an SSL/TLS certificate.
diff --git a/docs/production/upgrade-or-modify.md b/docs/production/upgrade-or-modify.md
index f40d07b1c2..b509926643 100644
--- a/docs/production/upgrade-or-modify.md
+++ b/docs/production/upgrade-or-modify.md
@@ -63,7 +63,7 @@ doing the final upgrade at off hours, or buying a support contract.
See the [troubleshooting guide](#troubleshooting-and-rollback) if you
run into any issues or need to roll back the upgrade.
-## Upgrading from a git repository
+## Upgrading from a Git repository
Zulip supports upgrading a production installation to any commit in a
Git repository, which is great for [running pre-release changes from
@@ -489,7 +489,7 @@ cd zulip
git fetch --tags upstream
git checkout acme-branch
git rebase --onto 2.1.0 2.0.4
-# Fix any errors or merge conflicts; see Zulip's Git Guide for advice
+# Fix any errors or merge conflicts; see Zulip's Git guide for advice
# Use `git diff` to verify your changes are what you expect
git diff 2.1.0 acme-branch
diff --git a/docs/subsystems/analytics.md b/docs/subsystems/analytics.md
index 989e1f1952..4662b801ca 100644
--- a/docs/subsystems/analytics.md
+++ b/docs/subsystems/analytics.md
@@ -123,7 +123,7 @@ efficient:
year, most of whose values are 0. A related note is to be cautious about
adding queries that are typically non-0 instead of being typically 0.
-## Backend Testing
+## Backend testing
There are a few types of automated tests that are important for this sort of
system:
@@ -156,7 +156,7 @@ statistics, etc.). There is currently a reference implementation of a
## Analytics UI development and testing
-### Setup and Testing
+### Setup and testing
The main testing approach for the /stats page UI is manual testing.
For most UI testing, you can visit `/stats/realm/analytics` while
diff --git a/docs/subsystems/conversion.md b/docs/subsystems/conversion.md
index e351326b0b..2bed74bda7 100644
--- a/docs/subsystems/conversion.md
+++ b/docs/subsystems/conversion.md
@@ -61,11 +61,11 @@ Things that we still may need:
We have a few major classes of data. They are listed below in the order
that we process them in `do_export_realm()`:
-#### Public Realm Data
+#### Public realm data
`Realm/RealmDomain/RealmEmoji/RealmFilter/DefaultStream`.
-#### Cross Realm Data
+#### Cross realm data
`Client/zerver_userprofile_cross_realm`
@@ -75,18 +75,18 @@ This includes `Client` and three bots.
`UserProfile` or `Realm` (unless you somewhat painfully tie it back to
users in a bottom-up fashion though other tables).
-#### Disjoint User Data
+#### Disjoint user data
`UserProfile/UserActivity/UserActivityInterval/UserPresence`.
-#### Recipient Data
+#### Recipient data
`Recipient/Stream/Subscription/Huddle`.
These tables are tied back to users, but they introduce complications
when you try to deal with multi-user subsets.
-#### File-related Data
+#### File-related data
`Attachment`
@@ -95,7 +95,7 @@ of `UserProfile`. Most importantly, of course, it requires us to grab
files from S3. Finally, `Attachment`'s `m2m` relationship ties to
`Message`.
-#### Message Data
+#### Message data
`Message/UserMessage`
@@ -116,13 +116,13 @@ process the data, which isn't surprising for a top-down approach.)
The next section of the document talks about risk factors.
-## Risk Mitigation
+## Risk mitigation
### Generic considerations
We have two major mechanisms for getting data:
-##### Top Down
+##### Top down
Get realm data, then all users in realm, then all recipients, then all
messages, etc.
@@ -131,7 +131,7 @@ The problem with the top-down approach will be **filtering**. Also,
if errors arise during top-down passes, it may be time consuming to
re-run the processes.
-##### Bottom Up
+##### Bottom up
Start with users, get their recipient data, etc.
@@ -139,14 +139,14 @@ The problems with the bottom up approach will be **merging**. Also,
if we run multiple bottom-up passes, there is the danger of
duplicating some work, particularly on the message side of things.
-### Approved Transfers
+### Approved transfers
We have not yet integrated the approved-transfer model, which tells us
which users can be moved.
### Risk factors broken out by data categories
-#### Message Data
+#### Message data
- models: `Message`/`UserMessage`.
- assets: `messages-*.json`, subprocesses, partial files
@@ -165,7 +165,7 @@ We currently have these measures in place for top-down processing:
- messages are filtered by both sender and recipient
-#### File Related Data
+#### File related data
- models: `Attachment`
- assets: S3, `attachment.json`, `uploads-temp/`, image files in
@@ -185,7 +185,7 @@ parts**:
- At import time we have to populate the `m2m` table (but fortunately,
this is pretty low risk in terms of breaking anything.)
-#### Recipient Data
+#### Recipient data
- models: `Recipient/Stream/Subscription/Huddle`
- assets: `realm.json`, `(user,stream,huddle)_(recipient,subscription)`
@@ -219,7 +219,7 @@ Recommendation: We probably want to get a backup of all this data that
is very simply bulk-exported from the entire DB, and we should
obviously put it in a secure place.
-#### Cross Realm Data
+#### Cross realm data
- models: `Client`
- assets: `realm.json`, three bots (`notification`/`email`/`welcome`),
`id_maps`
@@ -245,7 +245,7 @@ example. As for possibly missing messages that the welcome bot and
friends have sent in the past, I am not sure what our risk profile is
there, but I imagine it is relatively low.
-#### Disjoint User Data
+#### Disjoint user data
- models: `UserProfile/UserActivity/UserActivityInterval/UserPresence`
- assets: `realm.json`, `password`, `api_key`, `avatar salt`,
`id_maps`
@@ -259,7 +259,7 @@ We have code in place to exclude `password` and `api_key` from
`UserProfile` rows. The import process calls
`set_unusable_password()`.
-#### Public Realm Data
+#### Public realm data
- models: `Realm/RealmDomain/RealmEmoji/RealmFilter/DefaultStream`
- asserts: `realm.json`
diff --git a/docs/subsystems/events-system.md b/docs/subsystems/events-system.md
index 9da8c96c7e..b5c654827b 100644
--- a/docs/subsystems/events-system.md
+++ b/docs/subsystems/events-system.md
@@ -1,4 +1,4 @@
-# Real-time Push and Events
+# Real-time push and events
Zulip's "events system" is the server-to-client push system that
powers our real-time sync. This document explains how it works; to
diff --git a/docs/subsystems/html-css.md b/docs/subsystems/html-css.md
index ee7d8d7ccf..7bb41dd0b4 100644
--- a/docs/subsystems/html-css.md
+++ b/docs/subsystems/html-css.md
@@ -27,7 +27,7 @@ changes made in source files will immediately take effect in open
browser windows, either by live-updating the CSS or reloading the
browser window (following backend changes).
-## CSS Style guidelines
+## CSS style guidelines
### Avoid duplicated code
@@ -147,7 +147,7 @@ relevant background as well.
### Primary build process
Zulip's frontend is primarily JavaScript in the `static/js` directory;
-we are working on migrating these to Typescript modules. Stylesheets
+we are working on migrating these to TypeScript modules. Stylesheets
are written in the Sass extension of CSS (with the scss syntax), they
are converted from plain CSS, and we have yet to take full advantage of
the features Sass offers. We use Webpack to transpile and build JS
@@ -237,7 +237,7 @@ server is restarted, files are copied into that directory.
without breaking the rendering of old messages (or doing a
mass-rerender of old messages).
-### CommonJS/Typescript modules
+### CommonJS/TypeScript modules
Webpack provides seamless interoperability between different module
systems such as CommonJS, AMD and ES6. Our JS files are written in the
@@ -257,7 +257,7 @@ analysis. TypeScript uses an ES6-like module system. Any declaration
can be made public by adding the `export` keyword. Consuming
variables, functions, etc exported from another module should be done
with the `import` statement as oppose to accessing them from the
-global `window` scope. Internally our typescript compiler is
+global `window` scope. Internally our TypeScript compiler is
configured to transpile TS to the ES6 module system.
Read more about these module systems here:
diff --git a/docs/subsystems/index.rst b/docs/subsystems/index.rst
index ec341cb1c7..2cfe081683 100644
--- a/docs/subsystems/index.rst
+++ b/docs/subsystems/index.rst
@@ -1,5 +1,5 @@
########################
-Subsystems Documentation
+Subsystems documentation
########################
.. toctree::
diff --git a/docs/subsystems/input-pills.md b/docs/subsystems/input-pills.md
index d2bef0f600..c3b7f7d87f 100644
--- a/docs/subsystems/input-pills.md
+++ b/docs/subsystems/input-pills.md
@@ -1,4 +1,4 @@
-# UI: Input Pills
+# UI: input pills
This is a high level and API explanation of the input pill interface in the
frontend of the Zulip web application.
@@ -15,7 +15,7 @@ A pill container should have the following markup:
The pills will automatically be inserted in before the ".input" in order.
-## Basic Usage
+## Basic usage
```js
var pill_containter = $("#input_container");
diff --git a/docs/subsystems/logging.md b/docs/subsystems/logging.md
index df42946b5f..eb3b2212c1 100644
--- a/docs/subsystems/logging.md
+++ b/docs/subsystems/logging.md
@@ -1,4 +1,4 @@
-# Logging and Error reporting
+# Logging and error reporting
Having a good system for logging error reporting is essential to
making a large project like Zulip successful. Without reliable error
diff --git a/docs/subsystems/markdown.md b/docs/subsystems/markdown.md
index 22c4a951ee..372fa589c7 100644
--- a/docs/subsystems/markdown.md
+++ b/docs/subsystems/markdown.md
@@ -196,7 +196,7 @@ and users are generally writing quickly. Zulip's Markdown strategy is
based on the principles of giving users the power they need to express
complicated ideas in a chat context while minimizing those two error rates.
-## Zulip's Changes to Markdown
+## Zulip's changes to Markdown
Below, we document the changes that Zulip has against stock
Python-Markdown; some of the features we modify / disable may already
diff --git a/docs/subsystems/realms.md b/docs/subsystems/realms.md
index 6d0476d462..cbdfd8927d 100644
--- a/docs/subsystems/realms.md
+++ b/docs/subsystems/realms.md
@@ -9,14 +9,14 @@ The
[production docs on multiple realms](../production/multiple-organizations.md)
are likely also relevant reading.
-## Creating Realms
+## Creating realms
There are two main methods for creating realms.
* Using unique link generator
* Enabling open realm creation
-#### Using Unique Link Generator
+#### Using unique link generator
```bash
./manage.py generate_realm_creation_link
@@ -28,10 +28,10 @@ after the creation of the realm. The link also expires if not used
within 7 days. The expiration period can be changed by modifying
`REALM_CREATION_LINK_VALIDITY_DAYS` in settings.py.
-### Enabling Open Realm Creation
+### Enabling open realm creation
If you want anyone to be able to create new realms on your server, you
-can enable Open Realm Creation. This will add a **Create new
+can enable open realm creation. This will add a **Create new
organization** link to your Zulip homepage footer, and anyone can
create a new realm by visiting this link (**/new**). This
feature is disabled by default in production instances, and can be
@@ -55,7 +55,7 @@ releases had much less nice handling for subdomains. See our
[docs on using subdomains](../production/multiple-organizations.md) for
user-facing documentation on this.
-### Working With Subdomains In Development Environment
+### Working with subdomains in development environment
By default, Linux does not provide a convenient way to use subdomains
in your local development environment. To solve this problem, we use
diff --git a/docs/subsystems/schema-migrations.md b/docs/subsystems/schema-migrations.md
index 91c13a63a1..bf3248ea8b 100644
--- a/docs/subsystems/schema-migrations.md
+++ b/docs/subsystems/schema-migrations.md
@@ -1,4 +1,4 @@
-# Schema Migrations
+# Schema migrations
Zulip uses the [standard Django system for doing schema
migrations](https://docs.djangoproject.com/en/1.10/topics/migrations/).
diff --git a/docs/subsystems/sending-messages.md b/docs/subsystems/sending-messages.md
index f7fe1c76de..6485e34bff 100644
--- a/docs/subsystems/sending-messages.md
+++ b/docs/subsystems/sending-messages.md
@@ -284,7 +284,7 @@ of about 1 second per 2000 users subscribed to receive the message.
While these delays may not be immediately obvious to users (Zulip,
like many other chat applications,
[local echoes](../subsystems/markdown.md) messages that a user sends
-as soon as the user hits “send”), latency beyond a second or two
+as soon as the user hits “Send”), latency beyond a second or two
significantly impacts the feeling of interactivity in a chat
experience (i.e. it feels like everyone takes a long time to reply to
even simple questions).
diff --git a/docs/subsystems/widgets.md b/docs/subsystems/widgets.md
index 86d28c2fcb..5bf8392ef6 100644
--- a/docs/subsystems/widgets.md
+++ b/docs/subsystems/widgets.md
@@ -231,7 +231,7 @@ but you don't want to have to modify the Zulip server codebase
to turn on those features. This is where our "zform"
architecture comes to the rescue.
-## zform (Trivia Quiz bot)
+## zform (trivia quiz bot)
This section will describe our "zform" architecture.
diff --git a/docs/testing/index.rst b/docs/testing/index.rst
index 9543a64000..5929cbaa0e 100644
--- a/docs/testing/index.rst
+++ b/docs/testing/index.rst
@@ -1,5 +1,5 @@
############
-Code Testing
+Code testing
############
.. toctree::
diff --git a/docs/testing/linters.md b/docs/testing/linters.md
index f4fc6c1408..bbb81d12c2 100644
--- a/docs/testing/linters.md
+++ b/docs/testing/linters.md
@@ -195,7 +195,7 @@ We use Puppet as our tool to manage configuration files, using
puppet "manifests." To lint puppet manifests, we use the "parser validate"
option of puppet.
-#### HTML Templates
+#### HTML templates
Zulip uses two HTML templating systems:
diff --git a/docs/testing/manual-testing.md b/docs/testing/manual-testing.md
index 9ad579d98b..3addcb7835 100644
--- a/docs/testing/manual-testing.md
+++ b/docs/testing/manual-testing.md
@@ -11,7 +11,7 @@ This doc assumes you know how to set up a local development server
and open the Zulip app in the browser. It also assumes a basic
knowledge of how to use Zulip.
-## Basic Stuff ##
+## Basic stuff ##
When testing Zulip manually, here are things to focus on:
@@ -453,7 +453,7 @@ Test per-stream options:
messages view
- Verify stream subscriber counts in the main stream view
-### User Settings ###
+### User settings ###
You can modify per-user settings by choosing "Settings" in the gear menu.
Do these tasks as Cordelia.
@@ -492,7 +492,7 @@ Do these tasks as Cordelia.
- Turn on/off "Enable desktop notifications for new streams" and test.
(We may eliminate this option soon.)
-### Keyboard Shortcuts ###
+### Keyboard shortcuts ###
We mostly test keyboard shortcuts as part of other tasks.
diff --git a/docs/testing/mypy.md b/docs/testing/mypy.md
index 3b00783168..f5ce5662f6 100644
--- a/docs/testing/mypy.md
+++ b/docs/testing/mypy.md
@@ -87,7 +87,7 @@ an `Any` or `# type: ignore[code]` so you're not blocked waiting for help,
add a `# TODO: ` comment so it doesn't get forgotten in code review,
and ask for help in chat.zulip.org.
-## mypy stubs for third-party modules.
+## Mypy stubs for third-party modules
For the Python standard library and some popular third-party modules,
the [typeshed project](https://github.com/python/typeshed) has
diff --git a/docs/testing/philosophy.md b/docs/testing/philosophy.md
index a3f75e8657..7326f85fae 100644
--- a/docs/testing/philosophy.md
+++ b/docs/testing/philosophy.md
@@ -1,4 +1,4 @@
-# Testing Philosophy
+# Testing philosophy
Zulip's automated tests are a huge part of what makes the project able
to make progress. This page records some of the key principles behind
@@ -195,4 +195,3 @@ these tests are defense in depth; the main way we prevent invalid
access to streams is not offering developers a way to get a Stream
object in server code except as mediated through these security check
functions.
-
diff --git a/docs/testing/testing-with-casper.md b/docs/testing/testing-with-casper.md
index cdad57603c..cc694492f1 100644
--- a/docs/testing/testing-with-casper.md
+++ b/docs/testing/testing-with-casper.md
@@ -1,4 +1,4 @@
-# Web frontend black-box casperjs tests
+# Web frontend black-box CasperJS tests
These live in `frontend_tests/casper_tests/`. This is a "black box"
integration test; we load the frontend in a real (headless) browser,
@@ -17,7 +17,7 @@ You can run the casper tests with `./tools/test-js-with-casper` or as
`./tools/test-js-with-casper 06-settings.js` to run a single test file
from `frontend_tests/casper_tests/`.
-## Debugging Casper.JS
+## Debugging CasperJS
When a Casper test fails, the first things to check (before you bother
trying to use the Casper debugging tools are:
@@ -46,7 +46,7 @@ can sometimes give insight into exactly what's happening.
### Remote debugging
-Casper.js (via PhantomJS) has support for remote debugging. However, it
+CasperJS (via PhantomJS) has support for remote debugging. However, it
is not perfect. Here are some steps for using it and gotchas you might
want to know; you'll likely also want to read the section on writing
tests (below) if you get stuck, since the advice on how to write
diff --git a/docs/testing/testing-with-django.md b/docs/testing/testing-with-django.md
index 68b8edd75c..d53993b5ca 100644
--- a/docs/testing/testing-with-django.md
+++ b/docs/testing/testing-with-django.md
@@ -298,7 +298,7 @@ A common use is to prevent a call to a third-party service from using
the Internet; `git grep mock.patch | grep requests` is a good way to
find several examples of doing this.
-## Zulip Testing Philosophy
+## Zulip testing philosophy
If there is one word to describe Zulip's philosophy for writing tests,
it is probably "flexible." (Hopefully "thorough" goes without saying.)
diff --git a/docs/translating/german.md b/docs/translating/german.md
index b68c475afc..1386dc7b9a 100644
--- a/docs/translating/german.md
+++ b/docs/translating/german.md
@@ -7,7 +7,7 @@ following general translation rules.
## Rules
-### Formal or Informal?
+### Formal or informal?
**Informal.**
@@ -114,7 +114,7 @@ to get a feeling for the vocabulary.
* Balance common verbs and nouns with specific IT-related translations
of English terms - this can be tricky, try to check how other resources
-were translated (e.g. GMail, Microsoft websites, Facebook) to decide
+were translated (e.g. Gmail, Microsoft websites, Facebook) to decide
what wouldn't sound awkward / rude in German.
* For additional translation information, feel free to check out
@@ -144,7 +144,7 @@ Since we try to avoid concatenating words whenever possible, don't use
We go with "markiert" instead of "gesternt" (which is not even a proper
German word) here, since it comes closer to the original meaning of "starred".
-*"Markierte Nachricht" (GMail, Transifex),
+*"Markierte Nachricht" (Gmail, Transifex),
"Nachricht mit Stern" (WhatsApp)*
*"Bereich" (Transifex), "Community" (Google+)*
diff --git a/docs/translating/hindi.md b/docs/translating/hindi.md
index 4e5013e006..52722d47e5 100644
--- a/docs/translating/hindi.md
+++ b/docs/translating/hindi.md
@@ -16,7 +16,7 @@ Use informal Hindi for translation:
* Balance common verbs and nouns with specific IT-related translations
of English terms - this can be tricky, try to check how other
- resources were translated (e.g. GMail, Microsoft websites, Facebook)
+ resources were translated (e.g. Gmail, Microsoft websites, Facebook)
to decide what wouldn't sound awkward / rude in Hindi.
Some terms are very tricky to translate, so be sure to communicate
diff --git a/docs/translating/internationalization.md b/docs/translating/internationalization.md
index 3604be380f..1cd1055b45 100644
--- a/docs/translating/internationalization.md
+++ b/docs/translating/internationalization.md
@@ -1,4 +1,4 @@
-# Internationalization for Developers
+# Internationalization for developers
Zulip, like many popular applications, is designed with
internationalization (i18n) in mind, which means users can fully use
diff --git a/docs/translating/polish.md b/docs/translating/polish.md
index 5871d5e032..89f786a5ab 100644
--- a/docs/translating/polish.md
+++ b/docs/translating/polish.md
@@ -30,7 +30,7 @@ Use semi-formal Polish for translation, some specifics:
* Balance common verbs and nouns with specific IT-related translations
of English terms - this can be tricky, try to check how other
- resources were translated (e.g. GMail, Microsoft websites, Facebook)
+ resources were translated (e.g. Gmail, Microsoft websites, Facebook)
to decide what wouldn't sound awkward in Polish.
Some terms are very tricky to translate, so be sure to communicate
diff --git a/docs/translating/russian.md b/docs/translating/russian.md
index fc781fbd4f..4c8de9018c 100644
--- a/docs/translating/russian.md
+++ b/docs/translating/russian.md
@@ -1,4 +1,4 @@
-# Russian Translation Style Guide
+# Russian translation style guide
Вот некоторые правила, которых стоит придерживаться для поддержания
качества перевода. Они продиктованы опытом - собственным и коллег,
diff --git a/docs/translating/spanish.md b/docs/translating/spanish.md
index 44fff2910e..189d87dc9c 100644
--- a/docs/translating/spanish.md
+++ b/docs/translating/spanish.md
@@ -1,4 +1,4 @@
-# Spanish Translation Style Guide
+# Spanish translation style guide
Use informal Spanish for translation:
@@ -20,7 +20,7 @@ Use informal Spanish for translation:
* Balance common verbs and nouns with specific IT-related translations
of English terms - this can be tricky, try to check how other
- resources were translated (e.g. GMail, Microsoft websites, Facebook)
+ resources were translated (e.g. Gmail, Microsoft websites, Facebook)
to decide what wouldn't sound awkward / rude in Spanish.
* Latest RAE rule ("solo" should
diff --git a/docs/translating/translating.md b/docs/translating/translating.md
index 62c1850b07..d0d0fbee70 100644
--- a/docs/translating/translating.md
+++ b/docs/translating/translating.md
@@ -1,4 +1,4 @@
-# Translation Guidelines
+# Translation guidelines
Zulip's has full support for Unicode (and partial support for RTL
languages), so you can use your preferred language everywhere in
diff --git a/docs/tutorials/index.rst b/docs/tutorials/index.rst
index 1899e73a55..5f7e10ef31 100644
--- a/docs/tutorials/index.rst
+++ b/docs/tutorials/index.rst
@@ -1,5 +1,5 @@
###################
-Developer Tutorials
+Developer tutorials
###################
.. toctree::
diff --git a/docs/tutorials/life-of-a-request.md b/docs/tutorials/life-of-a-request.md
index 118f5077ba..9a5c83b494 100644
--- a/docs/tutorials/life-of-a-request.md
+++ b/docs/tutorials/life-of-a-request.md
@@ -1,4 +1,4 @@
-# Life of a Request
+# Life of a request
It can sometimes be confusing to figure out how to write a new feature,
or debug an existing one. Let us try to follow a request through the
@@ -37,7 +37,7 @@ location /static/ {
}
```
-## Nginx routes other requests [between django and tornado][tornado-django]
+## Nginx routes other requests [between Django and Tornado][tornado-django]
[tornado-django]: ../overview/architecture-overview.html?highlight=tornado#django-and-tornado
diff --git a/docs/tutorials/new-feature-tutorial.md b/docs/tutorials/new-feature-tutorial.md
index 9d7464f4f9..84def5565e 100644
--- a/docs/tutorials/new-feature-tutorial.md
+++ b/docs/tutorials/new-feature-tutorial.md
@@ -26,7 +26,7 @@ organized. And finally, the
[message sending](../subsystems/sending-messages.md) documentation on
the additional complexity involved in sending messages.
-## General Process
+## General process
### Files impacted
@@ -50,12 +50,12 @@ organization in Zulip). The following files are involved in the process:
(ex: pushing an organization change to other open browsers and updating
the application's state).
-**Backend Testing**
+**Backend testing**
- `zerver/tests/test_realm.py`: end-to-end API tests for updating realm settings.
- `zerver/tests/test_events.py`: tests for possible race bugs in the
zerver/lib/events.py implementation.
-**Frontend Testing**
+**Frontend testing**
- `frontend_tests/casper_tests/10-admin.js`: end-to-end tests for the organization
admin settings pages.
- `frontend_tests/node_tests/dispatch.js`
@@ -134,7 +134,7 @@ or JavaScript/TypeScript code that generates user-facing strings, be sure to
**Testing:** There are two types of frontend tests: node-based unit
tests and blackbox end-to-end tests. The blackbox tests are run in a
-headless browser using Casper.js and are located in
+headless browser using CasperJS and are located in
`frontend_tests/casper_tests/`. The unit tests use Node's `assert`
module are located in `frontend_tests/node_tests/`. For more
information on writing and running tests, see the
@@ -461,7 +461,7 @@ with the new value. E.g., for `authentication_methods`, we created
This completes the backend implementation. A great next step is to
write automated backend tests for your new feature.
-### Backend Tests
+### Backend tests
To test the new setting syncs correctly with the `property_types`
framework, one usually just needs to add a line in each of
@@ -637,7 +637,7 @@ Here are few important cases you should consider when testing your changes:
buttons, so changes and saving in one subsection shouldn't affect
the others.
-### Front End Tests
+### Front end tests
A great next step is to write front end tests. There are two types of
frontend tests: [node-based unit tests](../testing/testing-with-node.md) and
diff --git a/docs/tutorials/reading-list.md b/docs/tutorials/reading-list.md
index 0d8df1cee0..b7399b55c3 100644
--- a/docs/tutorials/reading-list.md
+++ b/docs/tutorials/reading-list.md
@@ -154,13 +154,13 @@ Some titles have been shortened for organizational purposes.
[TypeScript Declaration Files Introduction]: https://www.typescriptlang.org/docs/handbook/declaration-files/introduction.html
-## Git/Version Control Systems (VCS)
+## Git/version control systems (VCS)
You may want to take a look first at our [Git and GitHub guide][].
[Git and GitHub guide]: ../git/index.md
-## Computer Science/Algorithms
+## Computer science/algorithms
*Blog* - [GeeksforGeeks][]
@@ -216,7 +216,7 @@ You may want to take a look first at our [Git and GitHub guide][].
[List of good projects for new contributors]: https://github.com/MunGell/awesome-for-beginners
-## Competitions/Camps
+## Competitions/camps
[CodeForces][]
@@ -226,7 +226,7 @@ You may want to take a look first at our [Git and GitHub guide][].
[Free Code Camp]: https://www.freecodecamp.com
-## Massive Open Online Courses (MOOC) Platforms
+## Massive open online courses (MOOC) platforms
[Coursera][]
diff --git a/docs/tutorials/shell-tips.md b/docs/tutorials/shell-tips.md
index 1b85ffff74..4c905cea02 100644
--- a/docs/tutorials/shell-tips.md
+++ b/docs/tutorials/shell-tips.md
@@ -340,7 +340,7 @@ extremely useful and even easy to use (at least the 99% of the time).
To learn more about how to use it, read
[our docs](../git/index.md) on Git and
-Github.
+GitHub.
[This cheatsheet][git-cheat-detailed]
will be useful in your journey, as well.
diff --git a/frontend_tests/casper_tests/04-compose.js b/frontend_tests/casper_tests/04-compose.js
index 71114159fb..e398e02c44 100644
--- a/frontend_tests/casper_tests/04-compose.js
+++ b/frontend_tests/casper_tests/04-compose.js
@@ -222,7 +222,7 @@ casper.then(function () {
casper.fill(
'form[action^="/json/messages"]',
{
- content: "**Markdown Preview** >> Test for Markdown preview",
+ content: "**Markdown preview** >> Test for Markdown preview",
},
false
);
@@ -235,7 +235,7 @@ casper.then(function () {
casper.waitForSelectorTextChange("#preview_content", function () {
casper.test.assertEquals(
casper.getHTML("#preview_content"),
- "Markdown Preview >> Test for Markdown preview
",
+ "Markdown preview >> Test for Markdown preview
",
"Check Markdown is previewed properly"
);
});
diff --git a/frontend_tests/node_tests/hotkey.js b/frontend_tests/node_tests/hotkey.js
index ffa35bea2f..eb3789c8cb 100644
--- a/frontend_tests/node_tests/hotkey.js
+++ b/frontend_tests/node_tests/hotkey.js
@@ -286,7 +286,7 @@ run_test("basic_chars", () => {
overlays.is_active = return_false;
assert_mapping("d", "drafts.launch");
- // Test opening and closing of Recent Topics
+ // Test opening and closing of recent topics
overlays.is_active = return_true;
overlays.recent_topics_open = return_true;
assert_mapping("t", "overlays.close_overlay");
diff --git a/frontend_tests/puppeteer_tests/03-compose.js b/frontend_tests/puppeteer_tests/03-compose.js
index 603d96f86b..d5c844520c 100644
--- a/frontend_tests/puppeteer_tests/03-compose.js
+++ b/frontend_tests/puppeteer_tests/03-compose.js
@@ -192,12 +192,12 @@ async function test_markdown_rendering(page) {
"",
);
await common.fill_form(page, 'form[action^="/json/messages"]', {
- content: "**Markdown Preview** >> Test for Markdown preview",
+ content: "**Markdown preview** >> Test for Markdown preview",
});
await page.click("#markdown_preview");
await page.waitForSelector("#preview_content", {visible: true});
const expected_markdown_html =
- "Markdown Preview >> Test for Markdown preview
";
+ "Markdown preview >> Test for Markdown preview
";
await page.waitForFunction(() => $("#preview_content").html() !== "");
markdown_preview_element = await page.$("#preview_content");
assert.equal(
diff --git a/static/js/input_pill.js b/static/js/input_pill.js
index 0b47eda3de..a09f47feed 100644
--- a/static/js/input_pill.js
+++ b/static/js/input_pill.js
@@ -316,7 +316,7 @@ exports.create = function (opts) {
const id = $pill.data("id");
funcs.removePill(id);
$next.trigger("focus");
- // the "backspace" key in FireFox will go back a page if you do
+ // the "backspace" key in Firefox will go back a page if you do
// not prevent it.
e.preventDefault();
}
diff --git a/static/js/message_viewport.js b/static/js/message_viewport.js
index 58240c8257..5bf204ca47 100644
--- a/static/js/message_viewport.js
+++ b/static/js/message_viewport.js
@@ -336,7 +336,7 @@ exports.user_initiated_animate_scroll = function (scroll_amount) {
exports.recenter_view = function (message, opts) {
opts = opts || {};
- // Barnowl-style recentering: if the pointer is too high, move it to
+ // BarnOwl-style recentering: if the pointer is too high, move it to
// the 1/2 marks. If the pointer is too low, move it to the 1/7 mark.
// See keep_pointer_in_view() for related logic to keep the pointer onscreen.
diff --git a/templates/corporate/zephyr-mirror.html b/templates/corporate/zephyr-mirror.html
index 7952015f34..54cec7df54 100644
--- a/templates/corporate/zephyr-mirror.html
+++ b/templates/corporate/zephyr-mirror.html
@@ -30,16 +30,16 @@ mirror script instead of using Webathena.
web application will warn you if the Zephyr mirroring script is
not running.
- If you already have Barnowl running in screen/tmux somewhere,
+
If you already have BarnOwl running in screen/tmux somewhere,
you can just run:
/mit/tabbott/zulip/zephyr_mirror.py
inside that screen session.
- Mirroring without a Barnowl session
+ Mirroring without a BarnOwl session
- If you are not already running a screen/tmux for Barnowl, you
+
If you are not already running a screen/tmux for BarnOwl, you
can setup a screen session to run the Zephyr mirroring script by
running the following on a dialup such
as linerva.mit.edu:
diff --git a/templates/corporate/zephyr.html b/templates/corporate/zephyr.html
index 5b998d86e4..034f3ddbcd 100644
--- a/templates/corporate/zephyr.html
+++ b/templates/corporate/zephyr.html
@@ -42,7 +42,7 @@
/mit/tabbott/zulip/zephyr_mirror.py --sync-subscriptions
NOTE: Zulip supports several ways to control what messages you want to read
- right now, but Zulip does not yet have a direct equivalent to Barnowl filters.
+ right now, but Zulip does not yet have a direct equivalent to BarnOwl filters.
If you have more subscriptions than you generally read, we recommend that you use
Zulip's "Mute" option to hide those subscriptions from your
home view that you less commonly read. You can still easily access those streams
diff --git a/templates/zerver/help/allow-image-link-previews.md b/templates/zerver/help/allow-image-link-previews.md
index db5990f085..596f9ee2dd 100644
--- a/templates/zerver/help/allow-image-link-previews.md
+++ b/templates/zerver/help/allow-image-link-previews.md
@@ -12,9 +12,9 @@ images and/or website links.
{settings_tab|organization-settings}
-1. Under **Other Settings**, toggle **Show previews of uploaded and linked images**.
+1. Under **Other settings**, toggle **Show previews of uploaded and linked images**.
-1. Under **Other Settings**, toggle **Show previews of linked websites**.
+1. Under **Other settings**, toggle **Show previews of linked websites**.
{!save-changes.md!}
diff --git a/templates/zerver/help/format-your-message-using-markdown.md b/templates/zerver/help/format-your-message-using-markdown.md
index 8588a7d942..27a7227ed2 100644
--- a/templates/zerver/help/format-your-message-using-markdown.md
+++ b/templates/zerver/help/format-your-message-using-markdown.md
@@ -118,7 +118,7 @@ Organization administrators can also configure a default syntax
highlighting language. In this configuration, one can use ````text`
to display content without any syntax highlighting.
-## Latex
+## LaTeX
~~~
Inline: $$O(n^2)$$
diff --git a/templates/zerver/help/gdpr-compliance.md b/templates/zerver/help/gdpr-compliance.md
index 62dfb2d8cb..3cb97ccfe6 100644
--- a/templates/zerver/help/gdpr-compliance.md
+++ b/templates/zerver/help/gdpr-compliance.md
@@ -1,4 +1,4 @@
-# GDPR Compliance
+# GDPR compliance
This page covers how Zulip interacts with the EU's landmark GDPR
legislation; you can read the
@@ -13,7 +13,7 @@ give them control over how their personal data is collected,
processed, and used. The law applies to any company that collects or
processes the data of European consumers.
-## Controllers and Processors
+## Controllers and processors
There are two key relationships that are defined in the GDPR. As a
customer of Zulip Cloud, you operate as the controller when using our
@@ -35,7 +35,7 @@ personal data. These entities are commonly referred to as
sub-processors. For example, Kandra Labs leverages cloud service
providers like Amazon Web Services and Mailgun to host Zulip Cloud.
-## How Zulip Supports GDPR Compliance
+## How Zulip supports GDPR compliance
We’re committed to the compliance of all parties including you,
third-parties, and us.
@@ -66,7 +66,7 @@ this page but not defined have the meaning set forth in Zulip's Terms
of Service or superseding written agreement between Customer and
Kandra Labs (the "Agreement").
-### Third Parties
+### Third parties
Zulip currently uses third party Subprocessors to provide
infrastructure services, and to help us provide customer support and
diff --git a/templates/zerver/help/high-contrast-mode.md b/templates/zerver/help/high-contrast-mode.md
index 48f4aa860c..40c4308184 100644
--- a/templates/zerver/help/high-contrast-mode.md
+++ b/templates/zerver/help/high-contrast-mode.md
@@ -9,7 +9,7 @@ W3C's Web Content Accessibility Guidelines.
2. Under **Display settings**, select **High contrast mode**.
-## Related Articles
+## Related articles
* [Accessibility in Zulip](https://zulip.readthedocs.io/en/latest/contributing/accessibility.html)
* [View emoji as text](/help/view-emoji-as-text)
diff --git a/templates/zerver/help/include/sidebar_index.md b/templates/zerver/help/include/sidebar_index.md
index 301cb433f1..bee3ead6b1 100644
--- a/templates/zerver/help/include/sidebar_index.md
+++ b/templates/zerver/help/include/sidebar_index.md
@@ -115,7 +115,7 @@
* [Export your organization](/help/export-your-organization)
* [Change organization URL](/help/change-organization-url)
* [Deactivate your organization](/help/deactivate-your-organization)
-* [GDPR Compliance](/help/gdpr-compliance)
+* [GDPR compliance](/help/gdpr-compliance)
## Organization settings
* [Restrict stream creation](/help/configure-who-can-create-streams)
diff --git a/templates/zerver/help/index.md b/templates/zerver/help/index.md
index 409d84a61c..aecc180583 100644
--- a/templates/zerver/help/index.md
+++ b/templates/zerver/help/index.md
@@ -1,4 +1,4 @@
-# Zulip User Documentation
+# Zulip user documentation
Zulip is a group chat app. Its most distinctive characteristic is that
conversation within an organization is divided into “**streams**”
diff --git a/templates/zerver/help/keyboard-shortcuts.md b/templates/zerver/help/keyboard-shortcuts.md
index e7845ca7fe..6f6bae8564 100644
--- a/templates/zerver/help/keyboard-shortcuts.md
+++ b/templates/zerver/help/keyboard-shortcuts.md
@@ -137,10 +137,10 @@ title="thumbs up"/>**: `+`
(including All messages), and don't contribute to unread counts. Read more about
[muting topics](/help/mute-a-topic).
-## Recent Topics
+## Recent topics
-* **View Recent Topics**: `t`
-* **Hide Recent Topics**: `Esc`
+* **View recent topics**: `t`
+* **Hide recent topics**: `Esc`
Keyboard navigation (e.g. arrow keys) works as expected.
Use `Enter` to engage with elements.
diff --git a/templates/zerver/help/mute-a-stream.md b/templates/zerver/help/mute-a-stream.md
index a3c08193b4..9a3a355bca 100644
--- a/templates/zerver/help/mute-a-stream.md
+++ b/templates/zerver/help/mute-a-stream.md
@@ -32,6 +32,6 @@ Muted streams still appear in the left sidebar, though they are grayed out.
{end_tabs}
-## Related Articles
+## Related articles
* [Mute a topic](/help/mute-a-topic)
diff --git a/templates/zerver/help/organize-the-streams-sidebar.md b/templates/zerver/help/organize-the-streams-sidebar.md
index e5fd87a2e3..360ef5b28b 100644
--- a/templates/zerver/help/organize-the-streams-sidebar.md
+++ b/templates/zerver/help/organize-the-streams-sidebar.md
@@ -1,4 +1,4 @@
-# Organize the Streams sidebar
+# Organize the streams sidebar
At an organization level, we recommend starting with a few streams and
growing organically, and doing a cleanup once every year or two to archive
diff --git a/templates/zerver/help/restrict-profile-picture-changes.md b/templates/zerver/help/restrict-profile-picture-changes.md
index fd6a6d9d5f..53ac2913dc 100644
--- a/templates/zerver/help/restrict-profile-picture-changes.md
+++ b/templates/zerver/help/restrict-profile-picture-changes.md
@@ -1,4 +1,4 @@
-# Restrict Profile picture change
+# Restrict profile picture change
{!admin-only.md!}
diff --git a/templates/zerver/help/saml-authentication.md b/templates/zerver/help/saml-authentication.md
index c2551266b0..9a52b04fbd 100644
--- a/templates/zerver/help/saml-authentication.md
+++ b/templates/zerver/help/saml-authentication.md
@@ -1,4 +1,4 @@
-# SAML Authentication
+# SAML authentication
Zulip supports using SAML authentication for Single Sign On, both when
self-hosting or on the Zulip Cloud Plus plan.
@@ -57,7 +57,7 @@ Zulip with various common SAML Identity Providers.
* Optionally you can also send us an icon that should be shown on the button.
1. We will take care of the server-side setup and let you know as soon as it's ready.
-## Related Articles
+## Related articles
* [SAML configuration][saml-readthedocs] for self-hosting.
diff --git a/templates/zerver/help/zulip-in-a-terminal.md b/templates/zerver/help/zulip-in-a-terminal.md
index 622b24c320..ac990d0d39 100644
--- a/templates/zerver/help/zulip-in-a-terminal.md
+++ b/templates/zerver/help/zulip-in-a-terminal.md
@@ -1,4 +1,4 @@
-# Zulip in a Terminal
+# Zulip in a terminal
At present, there are a few alpha-quality implementations of a terminal
client for Zulip:
@@ -8,9 +8,9 @@ terminal interface for Zulip using [Urwid](http://urwid.org). It is
written in python and is being very actively developed; feedback and
bug reports are very welcome!
-* [Barnowl](https://github.com/aglasgall/barnowl/tree/zulip) is a
+* [BarnOwl](https://github.com/aglasgall/barnowl/tree/zulip) is a
multi-protocol terminal client for various chat systems, written in
-Perl. [Barnowl itself](https://barnowl.mit.edu/) is very mature
+Perl. [BarnOwl itself](https://barnowl.mit.edu/) is very mature
software, and the Zulip integration has been used for a few years, but
it isn't integrated into the mainline branch and needs work on
documentation.
diff --git a/templates/zerver/history.html b/templates/zerver/history.html
index d4b27366a0..9a3d9cbaf0 100644
--- a/templates/zerver/history.html
+++ b/templates/zerver/history.html
@@ -35,7 +35,7 @@
that previously created
Ksplice, software for
live-patching a running Linux kernel. Zulip was inspired by
- the Barnowl client for
+ the BarnOwl client for
the Zephyr
protocol, and the incredible community that Zephyr supported at MIT.
diff --git a/zerver/management/commands/send_custom_email.py b/zerver/management/commands/send_custom_email.py
index dcf0763c31..c834939c24 100644
--- a/zerver/management/commands/send_custom_email.py
+++ b/zerver/management/commands/send_custom_email.py
@@ -17,7 +17,7 @@ class Command(ZulipBaseCommand):
def add_arguments(self, parser: ArgumentParser) -> None:
parser.add_argument('--entire-server', action="store_true", default=False,
- help="Send to every user on the server. ")
+ help="Send to every user on the server.")
parser.add_argument('--markdown-template-path', '--path',
dest='markdown_template_path',
required=True,
diff --git a/zerver/migrations/0285_remove_realm_google_hangouts_domain.py b/zerver/migrations/0285_remove_realm_google_hangouts_domain.py
index 8ad0822ae7..d185494086 100644
--- a/zerver/migrations/0285_remove_realm_google_hangouts_domain.py
+++ b/zerver/migrations/0285_remove_realm_google_hangouts_domain.py
@@ -18,7 +18,7 @@ VIDEO_CHAT_PROVIDERS = {
def remove_google_hangouts_provider(apps: StateApps, schema_editor: DatabaseSchemaEditor) -> None:
# We are removing the Google Hangout integration because Google has
# removed the Hangouts brand. All the realms that used Hangouts as
- # their video chat provided are now set to the default, jitsi.
+ # their video chat provided are now set to the default, Jitsi.
Realm = apps.get_model('zerver', 'Realm')
Realm.objects.filter(video_chat_provider=VIDEO_CHAT_PROVIDERS['google_hangouts']['id']).update(
video_chat_provider=VIDEO_CHAT_PROVIDERS['jitsi_meet']['id']
diff --git a/zerver/templatetags/app_filters.py b/zerver/templatetags/app_filters.py
index 201f739b1f..b44f8d5658 100644
--- a/zerver/templatetags/app_filters.py
+++ b/zerver/templatetags/app_filters.py
@@ -78,7 +78,7 @@ docs_without_macros = [
def render_markdown_path(markdown_file_path: str,
context: Mapping[str, Any]={},
pure_markdown: bool=False) -> str:
- """Given a path to a Markdown file, return the rendered html.
+ """Given a path to a Markdown file, return the rendered HTML.
Note that this assumes that any HTML in the Markdown file is
trusted; it is intended to be used for documentation, not user