{% extends "zerver/portico.html" %} {% block title %} Development tools | Zulip Dev {% endblock %} {# Login page. #} {% block portico_content %}

Development tools

This page describes development-specific URLs and commands that may come in handy. Make sure your development server is running when you visit the pages linked below.

General

URL Command Description
/devtools/integrations None needed Test incoming webhook integrations
/emails None needed View outgoing and example emails.
/digest None needed View sample digest email.
/docs/index.html ./tools/build-docs Developer and production documentation (ReadTheDocs) built locally
/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

Design system

URL Description
/devtools/buttons Test button styles
/devtools/banners Test banner styles
/devtools/inputs Test input styles

Test coverage

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

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.

Modifying and running the help center

{% include "zerver/development/help_center_instructions_macro.html" %}

Viewing error pages

URL Command Description
/webpack/5xx.html None needed 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

Connecting to the local PostgreSQL database

{% endblock %}