CoverGrid Admin Login

Sign in to sync absences, coverages, and teachers across all office computers.

Offline mode
v2 SaaS
School
CoverGrid v2

School Coverage Console

School · Today · Main coverage dashboard

Viewer mode: editing is disabled for this account.
Today’s Coverage

Today’s Coverage Command Centre

Add absences, auto-assign coverage, send emails, review issues, and generate the daily coverage sheet from one place.

Quick Actions
0
Absent staff
Active absences requiring coverage today.
0
Assigned coverage
Coverage blocks already assigned.
0
Pending responses
Assigned teachers still to confirm.
0
Needs action
Uncovered, declined, or reassignment items.
🌅 Morning Workflow
A guided 5-step path for the office: date, absences, auto-assign, review, then notify/print.
0 of 5 steps complete
+ Quick Add Absence
📝 Today’s Queue
Coverage requiring action

Uncovered, declined, or reassignment items.

0
Response tracking

Accepted, pending, and total assigned coverage.

0
Daily coverage

Open the full coverage table for today.

0
0
Absent / selected / queued today
0
Periods covered
0
Pending responses
0
Total teachers
School total
Teacher total
📝 Assign Coverage

Select one or more absent teachers, choose their periods, then click Add to Queue and Auto-Assign Queue. CoverGrid distributes coverages fairly across the whole day.

Engine: uses each teacher’s schedule map, only assigns teachers with a free period, enforces 3 classes + 1 prep, avoids absent/double-booked teachers, caps same-day load, and balances coverage counts.

No teachers selected
Tip: hold Ctrl/⌘ or Shift to select multiple absent teachers.
Tip: If Supply Teacher is filled in, CoverGrid assigns that supply teacher to the selected period(s) and skips internal teacher assignment for those coverage records.
Assigned halves
0
Confirmed + pending coverage halves
Need reassignment
0
Declined or removed assignments
Uncovered
0
Office action required
Responses pending
0
Teachers still to reply
0
Smart Coverage Risk
Stable day. No action required.
Engine: fairness + availability + same-day conflict protection.
Priority: uncovered and reassignment items are fixed first.
📅 Today's coverages
No coverages assigned yet for today.Start by adding one or more absent teachers to the queue above, then click Auto-Assign All.
🏫 School Workspace

Manage school staff, teacher timetables, and bell schedules from one place.

🕐 Bell Schedule Templates

All schedule templates are displayed below using the same Day 1 / Day 2 structure as Regular Day and Late Start. These times are used for coverage records, emails, daily sheets, and reports.

🏫 School Workspace

Manage school setup, staff, teacher timetables, and bell schedules from one place.

⚙️ Coverage Rules School settings

Review and edit the active coverage rules used by the assignment engine.

Fairness rotation Balances assignments using current coverage counts and recent coverage history.
Prep-period protection Only staff with a free/prep period are selected for internal coverage.
Conflict prevention Absent teachers and already-assigned teachers are skipped for the same coverage block.
Coverage maximums Maximum same-day half-coverages: 2. Teacher max: 27. POR max: 14.
Supply override If a supply teacher is entered, CoverGrid assigns that supply teacher before internal coverage.
Reassignment handling Declined or removed assignments are flagged for review and reassignment.
Coverage Rules are operational guardrails for the assignment engine. Use Setup Wizard when changing school structure, bell schedules, or import setup.
🏫 School Workspace

Manage school setup, staff, teacher timetables, and bell schedules from one place.

🏫 Setup Wizard — Step 1: School Setup Step 1 of 6

Configure the school profile before importing staff, teacher timetables, bell schedules, and coverage rules.

1. School Setup Confirm school name, board, period structure, and semester flip date.
2. Import Staff Upload or create the staff roster and teacher emails.
3. Staff Timetables Add teaching periods, prep periods, courses, and rooms.
4. Bell Schedule Choose regular, late start, assembly, exam, or custom day schedules.
5. Coverage Rules Set fairness rules, coverage limits, and supply shortage handling.
6. Test Run Run a sample absence and confirm reports, emails, and coverage flow.
Recommended first-run order: complete School Setup, confirm the Bell Schedule, import Staff Roster, then import Staff Timetables.
Step 1 now saves setup values locally and prepares the school profile for later Firestore sync.
🏫 School Workspace

Manage school setup, staff, teacher timetables, and bell schedules from one place.

📄 Setup Wizard — Step 2: Import Staff Step 2 of 6

Upload a staff CSV or Excel file, preview the detected staff, and check for missing emails, missing departments, and duplicates before importing.

📄
Drop staff file here or click to upload CSV / Excel Supported columns: Name, Email, Department, Role, Active
Choose a CSV or Excel file to begin.
Import Preview
Review staff before importing into the roster.
StatusNameEmailDepartmentRoleActiveIssues
🏫 School Workspace

Manage school staff, teacher timetables, and bell schedules from one place.

🔍
#TeacherDept.Period APeriod BPeriod CPeriod DActions
Each teacher teaches 3 periods per day — one period shows "Prep" (available for coverage assignments)
🔍
DateDaySched.PeriodSubjectRoom1st time2nd timeAbsent / Supply1st Half / Status2nd Half / StatusActions
Reports
Operational coverage, absence, workload, and risk views.
Report presets
Start with the report school administrators usually need, then print, export, or refine the date range.
Generate Report
Choose a report, range, and output format.
Tip: use presets for common office tasks, or use Generate Report for a custom workflow.
★ Executive Summary + Risk Score Board-ready health score based on unresolved, uncovered, and pending coverage.
School / ScopeHealthRisk ScoreAbsencesPeriods MissedNeeds ActionPendingSuccess RatePriority
🔍
🧑‍🏫 Teacher Absence Report
🔍
Daily Absence Details
DateTeacherDept.Periods missedCovered halvesNeeds actionCoverage teachersSubjects / RoomsNotes
Teacher Totals
TeacherDept.Absence daysPeriods missedCovered halvesNeeds actionCoverage rateLast absence
⚖ Staff Workload / Fairness Flags heavy load, no-load, declined, and pending coverage patterns.
TeacherDept.Coverage CountAcceptedPendingDeclinedNeeds ActionLast CoveredFairness Flag
🚨 Risk / Unresolved Coverage Uncovered, declined, reassignment, and pending items in the selected date range.
DatePeriodAbsent TeacherSubjectRoomIssueAssigned TeacherStatusReason for DeclineAction
🏫 School Comparison Superadmin board view only — compares schools in the selected date range.
SchoolAbsencesPeriods MissedAssigned HalvesUncoveredPendingDeclined / ReassignSuccess RateTeachersAvg Load
🏫 School Workspace

Manage school staff, teacher timetables, and bell schedules from one place.

🔍
#NameEmailDepartmentPrep PeriodCoveragesLast coveredActions
0
Total coverages all time
0.0
Average per teacher
0
Most by one teacher
📈 Most coverages assigned
RankTeacherDept.Count
📉 Fewest coverages assigned
RankTeacherDept.Count
⚙️ Settings
Admin email address
CC'd on every coverage notification email.
Teacher email domain
Emails are generated as firstname.lastname@[domain]
One-Click Accept/Decline Response Page
Optional fallback only. The MVP now uses CoverGrid response links by default: teachers click Accept or Decline in the email and response.html records the status directly in Firestore. Setup instructions ▾
Backup & Restore
Download a complete backup of the current school before importing teachers, changing timetables, or running major coverage updates. Restore tools include a safe preview, a test-copy restore, and a protected replace-current-school option.
Restore from Backup
Step 1: Preview the JSON file. Step 2: Restore to a test copy when possible. Step 3: Replace the current school only after confirming.
Coverage history is saved to Firestore first, with browser storage used only as a local cache/fallback.
🕐 Bell Schedule Editor

Edit the bell times for each schedule template. Changes are saved in this browser and used immediately by the Assign Coverage schedule dropdown, Bell Schedule page, coverage emails, daily sheets, and reports. Use consistent labels such as 9:00–10:20 a.m..

📤 Staff Onboarding / Schedule Import

Upload or paste a staff CSV to create new teachers or update existing schedules for the currently selected school. Coverage history is preserved — only teacher profile and timetable fields are updated.

1. Upload or pasteUse a CSV exported from Sheets/Excel, or paste rows directly.
2. Preview + validateCoverGrid checks missing names, duplicate emails, and add/update actions before importing.
3. Confirm importTeachers are written to Firestore for the selected school only.
CSV format:
Name, Dept, Email, Period A Subject, Period A Room, Period B Subject, Period B Room, Period C Subject, Period C Room, Period D Subject, Period D Room

Leave subject & room blank for prep/free periods. First row must be the header row.
Example: James Smith, Math, james.smith@tdsb.on.ca, Math 9, 101, , , Advanced Functions, 203, , , Calculus, 305
Rule enforced in v1.2.1: each teacher must have exactly 3 class periods and 1 prep/free period. Prep can be A, B, C, or D.
— or paste CSV data directly —
Import Preview
Review before writing to Firestore.
0 add 0 update 0 skip
Action Name Dept Email Free Schedule Notes
📤 Upload Day Schedule (Period Times)

Upload a CSV to override the built-in period times for any schedule template: regular, late, assembly, earlyDismissal, exam, halfDay, fieldTrip, or custom. Useful if the bell schedule changes.

CSV format:
Type, Day, Period, Full Time, First Half, Second Half

Type = regular or late  ·  Day = day1 or day2  ·  Period = A, B, C, or D
Example: regular, day1, A, 9:00–10:20 a.m., 9:00–9:40 a.m., 9:40–10:20 a.m.
— or paste CSV data directly —
📅 Late Start Dates

The following dates are pre-loaded as Late Start days for this school year. The schedule type auto-switches when you select one of these dates on the Assign tab. Dates marked PLC are Staff Meeting / PLC days.

All other dates default to Regular Day.

September 17, 2025 PLC September 24, 2025 October 22, 2025 PLC October 24, 2025 October 29, 2025 November 19, 2025 PLC November 26, 2025 December 10, 2025 PLC December 17, 2025 February 18, 2026 PLC February 25, 2026 March 11, 2026 PLC March 25, 2026 April 22, 2026 PLC April 29, 2026 May 20, 2026 PLC May 27, 2026
⚙ CoverGrid SaaS Admin

Multi-school SaaS control panel. Manage schools, user profiles, roles, demo schools, and Firestore-first system health.

Firestore-firstTeachers and coverages save to Firestore first. Local storage is cache/fallback only.
Role securitySuperadmin, board admin, school admin, and viewer roles control school visibility and edit access.
Demo automationCreate full demo schools with teachers, schedules, and coverage pressure for sales presentations.
👥 User Management
NameEmailRoleSchoolsStatus
Click Refresh Users.
🏫 Demo School Generator

Creates a uniquely named Firestore demo school, settings, randomized teachers with exactly 3 classes + 1 prep, and demo coverage records.

🧪 Demo School Manager Demo-only tools

Manage demo schools used for sales walkthroughs and testing. Reset rebuilds fake teachers and coverage records. Delete only works on schools marked as demo or named like a demo school.

Demo School School ID Teachers Coverages Created Actions
Click Refresh Demo Schools.
📊 Live Board Aggregation
CoverGrid Executive Operations Report

Board Coverage Dashboard

Multi-school coverage risk, pending responses, and unresolved coverage pressure.

TDSB Generated today Superadmin view
Schools Monitored
0
Active schools
Absences Today
0
Unique absent staff
Uncovered
0
Immediate action
Pending
0
Awaiting response
Board Risk Score
0
Stable
Executive Summary Stable
    Risk by School
    Risk = uncovered × 35 + reassign × 20 + pending × 5 + absences × 3
    School Risk Table
    School Absent Covered Uncovered Pending Reassign Risk Status
    Add Teacher
    Changes save to the current school's Firebase teacher database.
    Period A
    Period B
    Period C
    Period D