The KDOV Scheduler coordinates pattern operations between visiting units and Dover AFB Tower. Pilots submit pattern requests through a public mirror form. You (the supervisor) review, approve, or reject those requests through this internal scheduler.
Both apps share a backend database, so requests appear in real-time and email notifications are sent automatically when status changes.
Eight 2-hour blocks per day, labeled A-H. Each block covers a UTC time range plus the local equivalent. Default capacity is 3 aircraft per block.
Pending awaiting your review
Confirmed approved booking
Rejected not approved
Every booking card has a 📧 Email button that opens your default email app pre-filled with all booking details. Useful for follow-up.
Click the Voice button to add bookings by speaking. Say callsign, aircraft, flight rules, date, and time block.
The Schedule tab shows all bookings for a single date, organized into 8 time blocks. Blocks display in Zulu (UTC) time with local time below.
Navigating dates
- Use ‹ Prev and Next › buttons to step day by day
- Click the date label in the center to open a date picker for jumping to any date
- The page remembers the last date you viewed
Block status colors
- Open — block has space available
- Full — block at capacity (red border)
Adding a booking manually
Click + Add on any block to create a booking directly. Fill in callsign, aircraft, unit, flight rules, and contact info. New bookings created here are auto-confirmed.
Each booking displays in a row with these columns:
- Status badge — Confirmed, Pending, or Rejected
- Callsign — primary identifier (largest, bolder)
- Aircraft — type (e.g., C-17, C-130)
- Unit — visiting organization
- Flight rules — VFR / IFR / TAAD / NVD
- Actions — Approve/Reject (if pending), Email button
- Reference number — KDOV-XXXX-XXXX format
- Submitted timestamp — when the request came in (Zulu)
This tab shows ALL pending requests across all dates, sorted with most urgent first. The amber badge in the tab bar shows how many are waiting.
Approving a request
Click ✓ Approve. The request immediately becomes confirmed, and an automatic email is sent to the pilot's POC with the confirmation. The booking moves to the Schedule tab.
Rejecting a request
Click ✕ Reject. A modal appears asking for a reason. Be specific — the pilot will receive your reason in their email.
- Good: "Block at capacity. Try 0800-1000 instead."
- Bad: "Denied."
Email button on every card
Even on the Pending tab, you can click 📧 Email to compose a manual reply. Useful when you need to ask for clarification before approving.
The amber Cert Watch banner sits above the schedule on the Schedule tab. Use it to flag when a controller is being evaluated for certification on the displayed date.
Why use it
- Other supervisors see at a glance "today is a watch day"
- Helps with shift handoffs (incoming supervisor knows context)
- Reminds you to keep traffic flowing for the trainee's evaluation
Adding a watch
Removing a watch
Click the ✕ on a chip to remove it. Confirmation is required before deletion.
Per-date storage
Cert watches are tied to a specific date. Switch dates with Prev/Next and you'll see only that date's watches. The banner is empty (dashed border) when no watches exist for that date.
Cert watches are internal only — they do NOT appear on the public mirror form. Pilots submitting requests do not know about them.
The Stats tab provides analytics across all bookings. Useful for briefings to leadership, justifying tool value, or understanding traffic patterns.
What you'll see
- Lifetime / YTD / This month — total confirmed bookings, three time horizons
- Confirmed / Pending / Rejected / Cancelled — request status breakdown with percentages
- Average response time — how fast you typically approve or reject after submission
- Bookings per month — 12-month trend chart
- Busiest time blocks — which 2-hour windows see the most traffic
- Top visiting units — top 8 organizations
- Top aircraft types — top 8 aircraft
- Cert watches per month — evaluation activity over time
Refresh button
Stats cache the most recent load. Click ↻ Refresh to pull updated numbers from the database.
Print button
Click 🖨 Print to open a clean black-on-white version optimized for paper or PDF printing. Use this for briefing handouts.
Export CSV button
Click ⬇ Export CSV to download a structured CSV file with all the data. The filename includes today's date. Open in Excel or Google Sheets for further analysis.
The Unit Roster tab is a reference list of visiting units, their callsigns, home bases, and aircraft types. Use it to look up unfamiliar callsigns or verify unit information.
Search
The search box at the top filters by callsign, unit name, or aircraft type. Type any partial match.
Multi-callsign units
Some units operate under multiple callsigns (e.g., LIFTR/MOOSE/BASCO/VOLT). These display together in the callsign column, wrapped to fit.
Layout
The roster uses a grid layout: callsign | unit code | location | aircraft type. All columns are centered for visual consistency.
The Settings tab has a small number of operational controls.
Capacity per block
Default is 3 aircraft per 2-hour block. Adjust if your operational situation changes (e.g., reduced staffing, special operations). Changes apply immediately to all dates.
Light / Dark mode
Toggle between dark mode (default, optimized for night ops) and light mode (gray background, optimized for day shifts in bright tower cabs). The theme button (top right) is amber when light mode is active.
scheduler-v2.kdov-scheduler.workers.dev. These are pre-approved on Air Force networks. Same code, same data, different URL.