Skip to main content

DutyBoard

Provide a simple, yet extensive overview of your Duty calendars using RFC 5545 compliant iCalendars.
Verified with PagerDuty, Google & Microsoft outlook Calendars.


Source Code: https://github.com/Jorricks/DutyBoard

Features

  • 🚀 Extendable Plugin structure allowing you to tune calendars & enrich duty officers information with for example LDAP.
  • 📈 Full RFC 5545 compliant iCalendar support, including recurring events, by using iCal-library.
  • ✨ Dynamic web-interface with the ability to tune using the plugin structure. Examples would be:
    1. Different color schemes.
    2. Your own company logo.
    3. Icons for extra user information.
    4. And much much more.
  • 💪 React front-end is pre-compiled and served through FastAPI.
  • 🆎 Fully typed code base.

Requirements

Python 3.8+

DutyBoard runs using:

Plugin structure

DutyBoard comes with a flexible plugin structure. You create a Python file like plugin/example/example_plugin.py in your container. Then simply set DUTY_BOARD_PLUGIN_LOCATION to that file, and DutyBoard will automatically load everything according to your specification.

The example plugin comes with:

  • iCalendar support to figure out who is on Duty.
  • LDAP integration to enrich the information of who is on Duty.
  • Customization options to modify the front-end according to your companies style.

Why this project?

Larger corporations often have many Duty schedules. This is often to shield team members from ad-hoc work during their work-week or to ensure the platform runs smoothly 24/7. However, exposing Duty schedules is easy at the start, but once you have three schedules, it becomes unclear who is on duty. Hence, a small front-end usually solves this, but that require manual intervention when the schedule changes. This projects aims to solve that by automatically fetching who is on duty from iCalendars

Release files for duty-board 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for duty-board 0.4.0
File Size Uploaded
duty_board-0.4.0.tar.gz 2.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for duty-board 0.4.0
File Interpreter ABI Platform
duty_board-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 4.8 MB

Release files / duty_board-0.4.0.tar.gz

Download URL duty_board-0.4.0.tar.gz
Size 2.4 MB
Tags Source
SHA-256 checksum
How to use checksums
5ecb43ab2aa1baedcbb347c22e022e0aabe85e1aa48a171d38ddbc6afb5f06a2
BLAKE2b-256 checksum
How to use checksums
eeb020eced328ac179cf2a28d4bf1c202732b9b17d08a672e821809c80f53e78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / duty_board-0.4.0-py3-none-any.whl

Download URL duty_board-0.4.0-py3-none-any.whl
Size 2.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
8d2637d96f821f049c0d324b4748b8db46a558db3e4af53b1e23463e34912b98
BLAKE2b-256 checksum
How to use checksums
3f7d5ed2f528cad7c8ce96acac1e50534a4277c5bd0a98fd42ce8e2e672ab56b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page