Skip to main content

Islamic prayer times widget for Waybar

Project description

Prayer Times — Waybar Widget

Shows Islamic prayer times in your status bar — auto-detects location via IP.

What it does

  • Displays how much time is left in the current prayer (e.g. "Isha 20m remaining")
  • Shows "Forbidden 12m" during sunrise and midday periods when prayer isn't allowed
  • Shows time until the next prayer when nothing is active (e.g. "Dhuhr in 1h")

How to use

  • Left-click the prayer time to switch between two display modes:
    • Context-aware (shows what matters right now)
    • Always show time until next prayer
  • Hover over it to see the complete daily timetable

Installation

From PyPI (recommended)

uv tool install waybar-salah

Or with pip:

pip install waybar-salah

From source

Requires uv.

uv tool install git+https://github.com/shahriyardx/waybar-salah

Or from a local copy:

cd /path/to/prayer-times
uv tool install .

Then add to your Waybar config:

"custom/prayer": {
    "exec": "waybar-salah",
    "return-type": "json",
    "interval": 30,
    "on-click": "waybar-salah --toggle",
    "tooltip": true
}

Add some CSS to colour the states:

#custom-prayer.current { color: #a6e3a1; }
#custom-prayer.forbidden { color: #f38ba8; }
#custom-prayer.next { color: #89b4fa; }

Customisation

Open src/waybar_salah/main.py and change CITY, COUNTRY, or METHOD at the top.

Method Organisation
1 University of Islamic Sciences, Karachi
2 Islamic Society of North America
3 Muslim World League
4 Umm Al-Qura, Makkah
8 University of Tehran

Files

src/waybar_salah/main.py     # main logic
pyproject.toml               # package config
cache.json                   # daily timings (auto-generated)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waybar_salah-0.1.1.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

waybar_salah-0.1.1-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file waybar_salah-0.1.1.tar.gz.

File metadata

  • Download URL: waybar_salah-0.1.1.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for waybar_salah-0.1.1.tar.gz
Algorithm Hash digest
SHA256 06a7ce78b100eea3a24f5a66220d186833588b74d2144223013fa0766fade27b
MD5 f7a4dc5e7fdfaaa31903b1a5903daf5a
BLAKE2b-256 cdffa408ecb4f284ecae15b677ff972570a543ec07e0093cf1303643cc0874e7

See more details on using hashes here.

File details

Details for the file waybar_salah-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: waybar_salah-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for waybar_salah-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 25a61088a818c458659a6685cb36338c89e81d1036ca8068cb3d3589883a920a
MD5 8b78cd9e1e250310c02b8096b26e5f1b
BLAKE2b-256 25b6a4ecbc661cf058377e2d4c5a2cc42a352a97ebb216c7aed2ce636a45ac34

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page