Skip to content
View ShamsiTray's full-sized avatar

Block or report ShamsiTray

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ShamsiTray/README.md

ShamsiTray

ShamsiTray is a lightweight Persian (Jalali/Shamsi) calendar app for Windows that displays the current day of the month in the system tray as an icon. It provides an intuitive calendar popup, a date conversion tool, holiday tracking, and the ability to add user events to dates.


Windows Only Downloads

🖼️ Pictures

✨ Features

  • Shows the current Shamsi (Jalali) date in the system tray.
  • Quick access to a small calendar popup.
  • Displays detailed information in the tray icon tooltip, including day of the week, month and year, holidays, and user-added events.
  • Includes a simple Shamsi(Jalali)–Gregorian date converter.
  • Allows adding events with options for yearly recurrence, automatic deletion after the event date passes, and full edit/delete support.
  • Provides a “Go to Date” option.
  • The tray icon date color turns red on holidays and Fridays.
  • Shows holiday or event details when hovering over a highlighted date in the calendar popup (red for holidays, green/blue for events).
  • Uses a local holidays.json file for holiday data (years 1400–1411 included). Users can freely modify or add holidays.
  • Includes a “Today” button to instantly jump back to the current date in the calendar popup.
  • Clicking a date in the calendar popup reveals its Gregorian equivalent, and the display format can be toggled between numeric (e.g., 12/24/2025) and long-form (e.g., Dec 24, 2025).
  • Option to launch at Windows startup.
  • Dark and Light Themes (the light mode is not perfect since the app was mainly built for dark mode use).

💡 Usage Tips

  • Single-click the tray icon to open the calendar popup.
  • Right-click the tray icon for quick actions: Date Converter, Change Theme, Launch at Windows startup and Exit.
  • Hover the mouse on the tray icon for the details tooltip.
  • Hover the mouse on the days with holiday/event in the calendar popup to see the details.
  • Right-clicking on a Date in the calendar popup allows you to add/edit and remove events.
  • Right-clicking on the year at the top of the calendar popup allows you to use the feature "Go To Date".
  • Left-clicking on the results in the date converter window copies them.

🐛 Known Issues

  • The context menu’s bottom-right corner slightly exceeds the bounds; despite numerous attempts to fix it, none were successful. The issue is barely noticeable in dark mode and somewhat more visible in light mode.
  • Tray icon for the date 23 slightly exceed bounds, though it’s barely noticeable.

📝 Notes

The concept of this app was inspired by the software LeoMoon JalaliTray, but I found it lacking in features, so I kept adding more until I ended up with ShamsiTray. The calendar popup UI was inspired by Widgetify.

I think this app is mostly complete since it has all the features I need, which means I don’t plan to add any new features or updates anymore.
I initially planned to use an API to fetch holiday reasons, but due to the lack of a stable and dependable API, I opted for a local, file-based implementation instead.

Also this app was almost entirely vibe-coded.

🛠️ Contributing

While I don’t actively plan new features, bug reports and small fixes are welcome.
Feel free to open an issue or submit a pull request.

📜 License

This work is under an MIT license

Pinned Loading

  1. ShamsiTray ShamsiTray Public

    A Persian calendar app for Windows that lives in your system tray

    Python 3