Skip to content

Scheduled Notifications for NTFY

Notifications You must be signed in to change notification settings

simlocker/ntfy-scheduler

Repository files navigation

🔔 Ntfy Scheduler

A minimalist, self-hosted web interface to schedule notifications for ntfy.

Instead of relying on calendar events or alarms, this lightweight container lets you type a message, pick a date, and fire it off to your phone via your own ntfy server whenever you want it to.

Ntfy Scheduler Screenshot

Features
  • Zero Dependencies: Runs on a single lightweight Docker container.
  • Mobile-Friendly: Clean, dark-mode UI that works great on phones.
  • Scheduled Delivery: Queues messages locally and POSTs them to ntfy at the exact time.
  • Topic Presets: Define your favorite topics in docker-compose to save typing.
  • Instant Test: "Test" button to verify your emojis and topics immediately.
  • Secure: Optional Basic Authentication to keep prying eyes out.
  • Auto-Cleanup: Automatically removes old reminders after 30 days.

Quick Start

You do not need to build anything. Just copy this docker-compose.yml and run it.

services:
  ntfy-scheduler:
    image: ghcr.io/simlocker/ntfy-scheduler:latest
    container_name: ntfy_scheduler
    restart: unless-stopped
    ports:
      - "5050:5000"
    volumes:
      - ./data:/data
    environment:
      - TZ=Europe/Madrid
      - NTFY_BASE_URL=https://ntfy.sh
      
      # Authentication (Optional)
      - AUTH_ENABLED=true
      - AUTH_USER=admin
      - AUTH_PASS=secret
      
      # Dropdown Options
      - TOPIC_PRESETS=reminders,house-chores,alerts

Run the container:

docker compose up -d

Access the UI at http://your-server-ip:5050

Configuration

Variable Default Description
TZ Europe/Madrid Your timezone (Important for correct scheduling!)
NTFY_BASE_URL https://ntfy.sh Your self-hosted ntfy server URL.
AUTH_ENABLED true Set to false to disable the login screen.
AUTH_USER admin Username for Basic Auth.
AUTH_PASS secret Password for Basic Auth.
TOPIC_PRESETS (Empty) Comma-separated list of topics for the dropdown menu (e.g., alerts,chores).

Built With

  • Python (Flask) - Backend
  • APScheduler - Timing engine
  • SQLite - Local storage
  • TailwindCSS - Styling
  • Google Gemini AI - Co-pilot & Code Architect

About

Scheduled Notifications for NTFY

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages