Monzo logo

Monzo

Streamlined incident response and reporting for Django teams

A Django app that automates Slack incident alerts, creates dedicated comms channels, and generates rich markdown reports to ease on‑call workload.

Overview

Overview

Incident response can overwhelm engineers. Response is a Django application that centralizes communication, automates Slack notifications, and builds rich markdown reports, letting teams focus on fixing issues instead of admin work.

How it works

Add response to INSTALLED_APPS, configure Slack credentials (SLACK_TOKEN, SLACK_SIGNING_SECRET, etc.), and include its URL patterns. When an incident is declared via the /incident Slack command, Response posts a headline message, creates a dedicated comms channel, and generates a linked incident document. The UI, powered by Bootstrap4, lets responders track actions, add updates, and export a post‑mortem. All data lives in your existing Django database and is exposed through Django Rest Framework endpoints for further automation.

Deployment

Run the app locally with manage.py runserver and expose it via ngrok or deploy to any Django‑compatible host. The package respects your authentication settings (RESPONSE_LOGIN_REQUIRED) and can be customized through Django templates and settings.

Highlights

Slack‑driven incident declaration with automatic headline post
Auto‑creation of dedicated comms channels for each incident
Markdown‑enabled incident documentation and post‑mortem export
REST API powered by Django Rest Framework for programmatic access

Pros

  • Reduces cognitive load during high‑pressure incidents
  • Seamlessly integrates into existing Django projects
  • Real‑time Slack notifications keep teams synchronized
  • Built‑in reporting templates accelerate post‑mortem creation

Considerations

  • Requires Django and DRF knowledge to configure
  • Slack app setup adds initial overhead
  • Limited to Python/Django ecosystems
  • UI depends on Bootstrap4 styling

Managed products teams compare with

When teams consider Monzo, these hosted platforms usually appear on the same shortlist.

Atlassian Opsgenie logo

Atlassian Opsgenie

Service-aware alerting, on-call, and incident orchestration.

AWS Systems Manager Incident Manager logo

AWS Systems Manager Incident Manager

On-call, escalation, runbooks, and chat for AWS incidents.

FireHydrant Incident Management logo

FireHydrant Incident Management

Runbooks, on-call, Slack-native collaboration, and postmortems.

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Engineering teams already using Django and Slack
  • Organizations that need structured incident documentation
  • On‑call engineers seeking automated communication tools
  • Companies wanting reproducible post‑mortem workflows

Not ideal when

  • Projects that do not use Python/Django
  • Teams without Slack as their primary chat platform
  • Very small services where a full incident system is overkill
  • Environments that cannot expose a public URL for Slack callbacks

How teams use it

Declare incident via Slack slash command

Instant headline post and dedicated comms channel are created, eliminating manual setup.

Generate a post‑mortem report

Rich markdown report linked from Slack, streamlining knowledge sharing and review.

Coordinate multiple engineers during an outage

Central UI tracks actions, status updates, and communication in one place.

Automate incident documentation via API

Programmatic updates ensure consistent records and enable CI/CD integration.

Tech snapshot

JavaScript50%
Python48%
HTML1%
CSS1%
Shell1%

Tags

incident-reportsresponseincident-responseincidentslack-botincident-management

Frequently asked questions

Does Response support chat platforms other than Slack?

Currently only Slack integration is provided; other platforms would require custom development.

What Django versions are compatible?

Response works with any Django version supported by the package; consult the documentation for exact requirements.

How is user authentication handled?

Authentication uses Django Rest Framework permissions, and the `RESPONSE_LOGIN_REQUIRED` setting can enforce login for UI access.

Can the incident headline message be customized?

Yes, templates can be overridden in your Django project to tailor the headline content.

Where is incident data stored?

All incident information is persisted in the project's configured Django database.

Project at a glance

Dormant
Stars
1,553
Watchers
1,553
Forks
170
LicenseMIT
Repo age6 years old
Last commit2 years ago
Primary languageJavaScript

Last synced 3 hours ago