Lightweight Sentry alternative
  • Python 48.9%
  • HTML 32.7%
  • CSS 17.4%
  • Dockerfile 0.8%
  • Shell 0.2%
Find a file
Kamil Marut 7e679e1e14
All checks were successful
Push Docker Image / push (push) Successful in 10m7s
refactor: Slightly improve code quality
2026-03-25 23:06:05 +01:00
.forgejo/workflows ci: Set up Docker image CI workflow 2026-03-21 23:15:39 +01:00
.zed build: Dockerize the app 2026-03-20 23:39:49 +01:00
examples docs: Create AGENTS.md and update README(s) 2026-03-20 22:57:57 +01:00
mado refactor: Slightly improve code quality 2026-03-25 23:06:05 +01:00
AGENTS.md build: Dockerize the app 2026-03-20 23:39:49 +01:00
README.md docs: Create AGENTS.md and update README(s) 2026-03-20 22:57:57 +01:00

Mado

A lightweight, self-hosted error tracking tool.

Quick Start

uv sync
uv run python manage.py migrate
uv run python manage.py seed        # optional: load sample data
uv run python manage.py runserver

Open http://localhost:8000.

Features

  • Projects — create, configure, delete projects; each gets a unique DSN key
  • Event Ingestion — POST structured error payloads via the /api/events/store/ endpoint
  • Event Browser — filter by status, level, full-text search; HTMX-powered live filtering
  • Event Detail — tabbed view of stack trace, tags, context, request data, user info, extras, SDK info
  • Stack Traces — collapsible frames with source context, highlighted error lines
  • Status Management — resolve, ignore, reopen events; single or bulk actions
  • Tags — auto-extracted (environment, release, level, etc.) plus custom tags
  • Database Agnostic — works with SQLite, PostgreSQL, MySQL, and any Django-supported backend

Development

# Run tests
uv run python manage.py test

# Type checking
uv run mypy projects events mado

# Create superuser for Django admin
uv run python manage.py createsuperuser