{% extends "zerver/portico.html" %} {% block title %} Tools and data sets | Zulip Dev {% endblock %} {# Login page. #} {% block portico_content %}

Useful development URLs

Below is a list of useful tools and data sets available only in the Zulip development environment that are often useful when contributing to Zulip. Most of these require you to run a command to build/generate the relevant content. This table specifies which command to use to update the data served by each page (since several of these, like test coverage, require a special command to be run to generate the data). Make sure your development server is still running when you visit these!

URL Command Description
/coverage/index.html ./tools/test-backend --coverage Backend (Django) test coverage report
/node-coverage/index.html ./tools/test-js-with-node --coverage Frontend (node) test coverage report
/docs/index.html ./tools/build-docs Developer documentation (ReadTheDocs) built locally
/emails View outgoing and example emails.
/stats/realm/analytics/ ./manage.py populate_analytics_db
Run the command after changing analytics data population logic.
View the /stats page with some pre-populated data
/webpack/5xx.html ./manage.py collectstatic --noinput Error 5xx page served by nginx (used when Django is totally broken)
/errors/404 None needed Error 404 page served by Django
/errors/5xx None needed Error 5xx page served by Django
/accounts/do_confirm/invalid None needed Invalid confirmation link page
/devtools/integrations None needed Test incoming webhook integrations

Useful management commands

Development-specific management commands live in zilencer/management/commands. Highlights include:

We also have documentation on testing LDAP, Google & GitHub authentication in the development environment.

Connecting to the local PostgreSQL database

{% endblock %}