[Feature Request] Scheduled Maintenance Windows for Status Pages
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 3.1k
- Forks
- 194
- Avg merge
- 18m
- Merged PRs (30d)
- 3
Description
Summary
Add the ability to schedule planned maintenance windows on status pages, showing upcoming and ongoing maintenance alongside the regular service status.
Use Case
When doing planned maintenance (server upgrades, DB migrations, network changes), operators need to inform users in advance and show the expected impact during the window. This is a standard feature in tools like UptimeKuma and Atlassian Statuspage.
Proposed Features
Backend / API
- A
MaintenanceWindowmodel (or extendStatusPageIncidentwith atypefield):title: short description (e.g., "Database upgrade")message: detailed Markdown body explaining impactstartedAt/endedAt: scheduled start and end timesstatus:scheduled|active|completedaffectedMonitors: list of monitor IDs affected (show as "Under Maintenance" instead of "Down")pageId: FK toMonitorStatusPage
- CRUD API to create/list/update/delete maintenance windows
- Auto-transition from
scheduled→active→completedbased on time (or manual)
Frontend / UI
- Admin panel: Monitor → Status Page → Edit → Maintenance tab
- Create maintenance with title, description, start/end datetime picker, affected services picker
- List of upcoming, active, and past maintenance
- Ability to cancel or complete early
- Status page display:
- Upcoming: Show a banner like "🛠️ Scheduled maintenance on June 10, 2026 from 2:00 AM to 4:00 AM (UTC-7)"
- Active: Show a prominent banner indicating ongoing maintenance, with affected services shown as "Under Maintenance" (yellow/blue badge instead of red/green)
- Past: Show in an incident log as resolved/completed
- Monitors affected by active maintenance should NOT trigger alerts/downtime notifications
Integration
- Monitors under active maintenance should not count as downtime in uptime calculations
- Alerts/notifications should be suppressed for monitors under maintenance
Why This Matters
This is critical for professional use cases (e.g., ERP systems, business SaaS) where planned maintenance needs to be communicated transparently to end users without triggering false alarms.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by mapping the existing MonitorStatusPage, StatusPageIncident, monitor alerting, uptime calculation, and status-page display flows. The issue proposes either a MaintenanceWindow model or extending StatusPageIncident, plus CRUD, admin UI, scheduled state transitions, maintenance badges, notification suppression, and uptime handling. Done means the backend, frontend, integrations, and time-based behavior work together with coverage for upcoming, active, completed, and cancelled maintenance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, full-stack, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100