ShiftOrbitTeam schedulingLOCAL PROTOTYPE
ShiftOrbitTeam scheduling

ACCOUNT ACCESS

Checking sign-in…

Connecting to your local schedule server.

BUILT FOR TEAMS THAT RUN ON SHIFTS

Every shift, every team,
in orbit.

On-call, coverage duty and onsite visits for every team, with swaps and approvals built in.

One schedule for every teamNorthSouthEastWest

TEAM PLANNING, SIMPLIFIED

A clearer week for everyone.

Engineer schedules · Regional local time

MW calendar

0

Engineers

0

Schedule entries this week

0

Recurring series

Saved on this computer
Admin access · Microsoft & Teams not connected.

Swipe across to see the full Sunday–Saturday schedule.

Open coverage

Appointments that still need an engineer this week. Engineers can request to cover them; claims require approval.

Local preview · Saved by your local application server.

EVENT DETAILS

Create an event

Times follow the selected region. All-day entries and on-call duty aren’t counted in scheduled work hours.

Add engineers

Select everyone who should attend this event.

YOUR TEAM

Manage engineers

These are local names, not invitations or user accounts.

Confirm change

ADMINISTRATION

Microsoft & Teams setup

Not connected · Saved settings are preparation only.

Signed in as . Only the administrator can access these settings and save schedule changes.

No Microsoft password or client secret is requested. These IDs do not enable sign-in by themselves.

Requires a registered public client with delegated Calendars.ReadBasic permission and public-client sign-in enabled. Each user must consent to their own connection. This does not enable Microsoft SSO or Teams hosting.


Make it available in Teams

  1. Host the application and shared data on an approved HTTPS service.
  2. Configure Microsoft sign-in and map administrator / engineer roles.
  3. Build the Teams app package for the hosted address.
  4. Have your Teams administrator approve and distribute the app.

Teams package templates and configuration pages are included in the project. They are not an installable production app yet.

Microsoft’s Teams tab requirements ↗

SCHEDULE APPROVALS

Engineer change approvals

Admins, Managers, and Team Leads can review and publish requests. Admins may approve their own shift switches. Other requests need another reviewer. Changes stay unpublished until approved. Outdated requests must be resubmitted.

AUTOMATIC ON-CALL COVERAGE

Coverage rotations

U.S. Central time (with daylight saving). Friday 5pm–Monday 8am continuously, then Monday–Thursday 5pm–8am overnight, ending Friday 8am. Creates this duty week plus eight upcoming weeks and checks hourly while running. Weekly switches preserve the rotation order.

Manager rotation · All teams

Engineer rotations · On Call / FireFighter · Selected desk


Create rotation

The first engineer covers the starting week. The list repeats in this order.

Changing the order updates future weeks that haven’t been manually edited. Existing weekly switches are preserved. Pausing keeps assignments already created. Save draft stores proposed changes for review without changing posted coverage. Publish applies them.

ON-CALL COVERAGE EXCEPTION

Switch engineer

Reassigns this Friday–Friday duty week only, including the weekend and weekday nights. Future rotation assignments stay unchanged.

Assign flexible shift

Managers and Admins can set FL shift times and assign an engineer. Times are entered locally; FL time-zone configuration is deferred. For a 24-hour shift, use the same start/end time on consecutive dates.

SHARED MANAGER COVERAGE

Manager on-call rotation

One rotation covers all teams, assigning one manager each duty week. The next manager takes the following week, then the order repeats. Names here are coverage contacts, not new user accounts.

Select managers and put them in rotation order. The first manager covers the starting duty week.

Switch manager

Submit a manager switch for this duty week only. Approve it in Approvals to publish; Admins may approve their own switch. Future weeks keep their regular order.

Connect Outlook · Read only

Approve access only to display calendar events. No Microsoft password is entered into this app. Reconnect after signing out of the local app or restarting it.

ADMINISTRATION

Tab visibility & access

Disabled tabs are hidden from everyone. For enabled tabs, choose allowed roles and optionally limit access to selected users. Admins can access enabled tabs regardless of role or user restrictions. NOC starts disabled. Regional Engineer roles are limited to their own region.

Confirm your admin password

USER PROFILE

Edit contact details

Appointment categories

Add or edit a category

Assign FireFighters · FF

Select all engineers covering this day. Later days and the rotation order stay unchanged.

Assign open coverage

Select the engineers who will cover this appointment on this date.

ON-CALL COVERAGE

On Call

Password reset link

Expires in 30 minutes and works once. Share it privately with this user. They choose the new password; their MFA registration stays in place. Remote access requires the hosted app.

RECURRING CLIENT VISITS

Onsite schedules


New onsite schedule

Changes apply from the change date. Choose a date after the original schedule start; earlier visits stay in reports. For a single-date change, edit the visit in the calendar.

Repeat on these weekdays
Assigned engineers

Select multiple engineers if needed. Leave everyone unchecked to post these visits as Open coverage.

Onsite reports

Up to 366 days per report. Each appointment counts as one visit, even with several engineers. Open visits are shown separately as unassigned. These are scheduled visits, not confirmation of attendance.

Daily activity log

MY PROFILE

Your profile

Name and work

Managed by your administrator.

About you

Contact

Location

Emergency contact

Only you and administrators can see this.

Sign-in and security

  • Authenticator app
  • Passkeys

Passkeys work with Windows Hello, your phone, or a password manager like Bitwarden.

Calendar subscription

Add your ShiftOrbit shifts to Outlook, Google Calendar or your phone. The link is private: anyone who has it can see your schedule, so don’t share it.

ADMINISTRATION

Role permissions

Choose what each role can do. Admins always have every permission. Regional calendar access still follows Tab access, so a Team Lead only manages the regions they can open. Engineer switches still go through Approvals, but people allowed to manage that appointment type can approve their own.

ADMINISTRATION

Teams & regions

Rename teams, change their region and hours, hide a team from the On Call page, or archive it. Each team gets its own engineer role. A team can only be deleted when it’s empty; archive it to keep its history.

+ Add a team

SHIFT SWAPS ·

Trade a shift

Offer one of your shifts, or take one a teammate can’t make. A lead approves each trade before the schedule changes.

Up for grabs

Offer one of my shifts

REPORTS

Coverage & fairness

Highlighted numbers are well above (amber) or below (blue) the team average. Work hours exclude on call, PTO and holidays.

Coverage gaps

ADMINISTRATION

Notifications

Everyone gets in-app notifications under the bell. You can also post team updates to a Microsoft Teams or Slack channel. In Teams, add the Post to a channel when a webhook request is received workflow and paste its address here. The address is kept on the server only.

Post these to the channel:

TEAM SET-UP

Positions

Positions are job levels such as Associate System Engineer, System Engineer or Senior System Engineer. They show under each person’s name, and anyone can build a custom view that only shows certain positions.

Position list

People on this team

ADMINISTRATION

Organization & sign-in page

Make ShiftOrbit your own: your logo, your organization’s name, and the words people see on the sign-in page. Plain text only.

Name and logo
Square images look best. It’s resized to 256×256.
Brand colour

Off keeps the standard blue. Text on buttons switches between dark and light automatically so it stays readable.

Words used in the app

Used everywhere the app talks about the daily coverage rotation. What each team calls its people is set per team under Teams & regions.

Sign-in page

ADMINISTRATION

Features & options

Turn on only what your organization uses. Everything here is off unless you switch it on, and you can turn it off again at any time without losing data.

ADMINISTRATION

Backups & system health

System health
Recent errors
    Backups

    A copy of all ShiftOrbit data is saved automatically every day. Restoring puts everything back to that moment; a safety copy of the current data is made first.

    HELP CENTER

    How things work

    Search or open a topic. Only topics for your role are shown.

    TEAM ANNOUNCEMENT

    Post an announcement

    Shown as a banner at the top of the team calendar until the end date.

    ADMINISTRATION

    Wall boards

    A “who’s working now” page for an office TV. Anyone with the link can see names and status (working, on call, coverage duty, onsite, away), never phone numbers or event details. Turn a link off any time.

    New board link
    Teams to show

    Active boards

    REPORTS

    Audit export (HR)

    Every change and who made it, as a spreadsheet (CSV, opens in Excel). Up to one year at a time. The export itself is recorded in the security log.

    SCHEDULING

    Copy week & templates

    Copy this week forward

    Events already in those weeks aren’t duplicated. If your role needs approval, it’s sent as a request.

    Week templates

    Save this week’s one-off events as a template, then apply it to any week.

    SCHEDULING

    Open shifts

    Shifts with nobody on them in the next four weeks, across the teams you can see. Say you can take one and your lead confirms it.

    MY AVAILABILITY

    When I can’t work

    Leads see a warning if you’re scheduled on these days. It doesn’t change the schedule by itself.

    TIME OFF

    Time off

    Approved time off is added to the calendar as PTO.

    Request time off

    My requests

    ADMINISTRATION

    Time-off allowances

    Working days per calendar year. Leave a person blank to use the standard allowance.

    SCHEDULING

    Holidays

    Shown at the top of each team’s calendar, skipped by minimum staffing, and not counted as time off.

    SCHEDULING

    Staffing & hour rules

    Warnings show at the top of the team calendar. Nothing is blocked.

    Minimum people working

    0 means no rule. Holidays are skipped. Reviewers are notified about short days in the next week.

    Hour limits

    REPORTS

    Payroll export

    Hours and on-call per person for a pay period (up to 3 months), as a spreadsheet. Recorded in the security log.

    USERS

    Import from a spreadsheet

    Adds people to the team calendars. Save from Excel as CSV UTF-8. Columns: First name, Last name, Email, Team, Position. Nothing changes until you click Import.

    ON CALL CONTACT

    YOUR VIEWS

    New custom view

    Custom views are saved to your account only. The built-in views and everyone else’s calendar stay exactly as they are.

    Show these categories

    Leave all unchecked to show everything.

    People

    Engineer choices apply to the regional calendar you’re viewing.

    ACCOUNT SECURITY

    Passkeys

    Sign in with just your username and a passkey, or use it instead of the authenticator code. Passkeys can’t be phished. Each passkey lives where it was saved, and that’s what pops up when you sign in.

    Want Bitwarden (not Windows Hello) to pop up?
    1. In the Bitwarden extension: Settings → Notifications → Ask to save and use passkeys must be on, and Bitwarden must be unlocked.
    2. Remove any passkey below that says Saved in Windows Hello or Provider unknown.
    3. Click Add passkey: Bitwarden asks to save it. If Windows Hello appears instead, cancel it and check step 1.
    4. Use http://localhost:4188 (not 127.0.0.1), and next time you sign in Bitwarden shows the passkey.

    Add a passkey

    Your current password is also needed to remove a passkey.