{% extends "zerver/portico.html" %} {# Login page. #} {% block portico_content %}
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 |
View backend coverage report |
/node-coverage/index.html | ./tools/test-js-with-node --coverage |
View node coverage report |
/docs/index.html | ./tools/build-docs |
View Zulip documentation |
/emails | ./tools/inline-email-css Run the command if you made changes to source.html email templates. |
Preview all email templates. |
/static/html/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 |
Development-specific management commands live in zilencer/management/commands
. Highlights include:
./manage.py populate_db
: Rebuilds database. Has options to e.g. create 3K users for testing../manage.py mark_all_messages_unread
: Useful for testing reading messages../manage.py add_new_realm
: Add a new realm. Useful for testing onboarding../manage.py add_new_user
: Add a new user. Useful for testing onboarding../manage.py add_mock_conversation
: Add test messages, streams, images, emoji, etc.
into the dev environment. First edit zilencer/management/commands/add_mock_conversation.py
to add the data you're testing.
You can find docs on testing Google & GitHub authentication over here.