Wallscourt Farm Academy · How to use the Learning Schedule, Release Schedule, and FAB Rota
Wallscourt Farm Academy uses three web-based scheduling tools, all connected to a shared Google Sheet. They work on any device — laptop, iPad, or phone — and sync automatically so changes on one device are visible on all others after a refresh.
| Tool | What it does | Who uses it |
|---|---|---|
| Learning Schedule | Plan what each year group is learning each week — drag subjects into sessions, split lessons, add notes | Class teachers, TPs, LPs |
| Release Schedule | Record who is out of class each week and who is covering them | Office staff, cover manager |
| FAB Rota | Assign staff to Fresh Air Break duty zones each week | Office staff, rota manager |
From this page you can access all three tools and this user guide.
The Learning Schedule is a drag-and-drop timetable planner. Each year group has its own schedule with the correct session times, break times, and staff. You add subjects from the sidebar into session cells, reorder them, split lessons for class swaps, and add notes.
Click the year group dropdown at the top right (e.g. Y4) to switch to a different year group. When you switch:
Each year group has its own colour theme:
Each year group shows the correct timetable rows for that age group. The main differences are:
Use the < and > arrows to move between weeks. Click This week to jump back to the current week. The week label shows the term, week number, and date range (e.g. Term 2 · Week 3 · 13 Jan – 17 Jan).
The row of tabs below the header switches between views:
Subjects are grouped by category (Enquiry, Maths, Reading, etc.). Each chip shows a colour dot and the subject name.
Hold and drag the chip from the sidebar into any Session 1, 2, or 3 cell. The target cell highlights with a dashed blue outline. Release to drop.
Click the ⇔ button on a chip to split it into two side-by-side halves. This represents two groups doing different subjects at the same time (e.g. a class swap). The left half keeps the original subject; drag a subject onto the right half to fill it. Each half has its own notes.
To unsplit, click the ↔ button at the bottom of the split chip.
Click the + button at the bottom of a chip to expand a notes area. Type your note and press Enter or click away to save. If a note already exists, the textarea is visible by default.
Drag the bottom edge of a chip up or down to change its height. This represents the duration of the activity. The minimum is one unit (roughly 15 minutes). Use this to show that a reading session is shorter than a writing session, for example.
Some intervention chips (like HomeZone) have a larger colour dot with a white border. Click this dot to pick from a palette of subject colours. The chip recolours and renames itself to match — for example, selecting the Writer colour changes it to "HomeZone - Writer".
Click the + button next to a day name in the column header to open the staff-out modal. Here you can mark periods when a staff member is out of class:
Staff-out spans appear as coloured vertical strips along the left edge of the day column, with a label badge at the top of the span.
Days with blocking events (INSET, half term, bank holidays) are pulled from the Google Sheet. These columns are greyed out with a badge showing the event name (e.g. "HALF TERM"). You cannot drop chips into non-school day cells.
The After School row shows events from the Google Sheet automatically. These appear as read-only chips — you cannot edit or remove them. They come from two sources:
Staff who have regular daily activities (e.g. lunch duty, football club) can have these shown automatically on their schedule. These come from the DayActivities tab and appear as dashed-border chips with a colour. If no colour is specified, the staff member's colour from the Staff tab is used.
Hover over a Day Activity chip to see the × remove button. Click it to remove that activity for that specific date only — useful if the person is absent or has a conflict. Removed activities are saved to the ActivityExceptions tab and persist across refreshes.
Fresh Air Break duties are pulled automatically from the FAB Rota tool and shown on the FAB row for each year group. The display format shows the staff member's initials and, for upper years (Y4-6), the zone they're assigned to:
On the master view, all FAB duties for that year group are shown. On a staff view, only that person's FAB duty appears.
Like Day Activities, FAB duty chips have a dashed border. Regular staff use their colour from the Staff tab. Supply staff use the colour of the year group they are covering (set in the FAB Rota tool when assigning).
You can remove a FAB duty for a specific date by clicking the × button — this stores an exception but does not affect the FAB Rota tool's data.
Click the ⚙ button in the header to edit staff names and colours for the current year group. Each staff member has a text input for their name and a row of colour swatches. Click Save when done.
Click Subject settings in the top bar to edit subject names and colours per group. Each subject has a text input and a colour picker.
The Learning Schedule syncs with a Google Apps Script endpoint. Any change you make is saved automatically to the cloud. When you open the page or navigate to a new week, it pulls the latest data. If offline, changes are saved locally and sync when you reconnect.
The Release Schedule has two parts: a viewer that everyone can check, and a planner that the cover manager uses to build the weekly schedule.
The viewer is a read-only page that shows the current week's cover arrangements. It auto-refreshes every 3 minutes. It has three views:
On first use, the viewer asks for the Google Sheet ID. Paste the sheet URL or ID and press Enter. This is saved so you don't need to enter it again.
The viewer automatically shows:
The planner is the interactive tool for managing the weekly release schedule. It has three panels:
Class teachers and non-class based staff (SENCO, SLT, Phase Leads). Drag someone from here into the grid to mark them as out.
Five columns (Mon–Fri) and five rows (Before School, AM, Lunch, PM, After School). Each cell shows who is out and who is covering.
Everyone available to provide cover. Drag a cover person onto a TBC slot to assign them.
Highlighted in blue so you can see at a glance what is happening today.
Class teachers are listed at the top, non-class based staff below the divider.
Hold and drag the teacher's card to the session and day. A highlight shows valid drop targets. Release to place the slot.
Each slot has a dropdown with the reason (e.g. PPA, ECT1). The planner pre-selects the best reason based on entitlements. Change if needed.
Any slot without cover shows a pale dashed box marked + TBC.
The box highlights when you hover. Drop to assign. The cover person's name and avatar appear in the slot.
Each teacher card shows small dots (pips) tracking their entitlement usage:
If you set a slot's reason to Other, a small text input appears for you to type what the reason is (e.g. "Dentist appointment"). This is cleared automatically if you change the reason away from Other.
In Before School, Lunch, and After School rows, empty cells show a "+ add note" link. Click it to add a free-text note (e.g. "Staff social"). Notes appear as coloured bars in the cell. Click the × to remove a note.
Each day column header has a small × in the corner (visible when the day has slots). Click it to clear all slots for that day only. A confirmation dialog appears first.
The padlock button (top right) switches the planner into read-only mode. When locked, slots cannot be moved, added, or removed, and reason dropdowns are disabled. Tap the padlock again to unlock.
Coloured banners in cells come from the SchoolEvents tab and are informational only. They appear every week automatically.
Use ← Previous and Next → to move between weeks. When you navigate to a week that hasn't been set up, it auto-fills from the Recurring tab.
The Google Sheet has a custom menu called Release Schedule with three options:
The FAB (Fresh Air Break) Rota assigns staff to break duty zones each week. It has two sections: Lower school (Y1–Y3, break at 10:30–10:45, no zone breakdown) and Upper school (Y4–Y6, break at 10:45–11:00, with four zones: MUGA, Garden Room, Hard Standing, Trim Trail).
Each person shows as a colour-coded chip with their initials, name, and a count badge showing how many slots they have this week.
Hold and drag the chip to the target cell. The cell highlights with a dashed blue outline. Release to assign. Duplicate assignments (same person, same cell) are prevented.
Click the × button on a staff chip within a grid cell to remove that person from that slot.
Each chip in the grid has a ≡ drag handle on the left. Hold this handle to drag the chip to a different zone or day. The chip is removed from the source cell and added to the target cell. This is faster than deleting and re-adding.
When you drag a Supply staff member into a slot, a modal appears asking which year group they are covering (Y1–Y6). Select the year group to assign them. The chip displays with that year group's colour and shows the year group in brackets, e.g. Supply (Y4).
If you move a supply chip to another slot, the year group is preserved. To change the year group, remove the chip and drag Supply in again.
Each staff chip in the left panel shows a badge like "3×" indicating how many slots they are assigned to this week. If zero, no badge is shown.
Use the < and > arrows to move between weeks. Click This week to jump back to the current week.
Click Copy → next week to copy the current week's assignments into the following week. If the next week already has assignments, a confirmation dialog appears.
Click "+ Edit staff list" at the bottom of the left panel to open the staff editor. Here you can:
Staff loaded from the Google Sheet appear first. Any temporary staff you add are saved alongside them.
The FAB Rota syncs with a Google Apps Script endpoint. Changes are saved automatically. On page load, the latest data is pulled from the cloud. If offline, changes are saved locally and sync when you reconnect.
All three tools read from the same shared Google Sheet. Below is a complete reference of every tab and which tools use it.
| Tab | Learning Schedule | Release Schedule | FAB Rota |
|---|---|---|---|
| Staff | Yes | Yes | Yes |
| TermDates | Yes | Yes | Yes |
| CalendarEvents | Yes | Yes | — |
| EventsMeetings | Yes | Yes | — |
| SubjectGroups | Yes | — | — |
| Interventions | Yes | — | — |
| DayTimings | Yes | — | — |
| DayActivities | Yes | — | — |
| ActivityExceptions | Yes | — | — |
| RecurringCover | — | Yes | — |
| Plan | — | Yes | — |
| Weeks | — | Yes (viewer) | — |
| Column | Used by | Notes |
|---|---|---|
| Name | All | Full name. Must match exactly across all tabs. |
| Role | All | Controls which panel the person appears in (Release Schedule) and whether they get a staff view tab (Learning Schedule). |
| YearGroup | All | Comma-separated for shared staff (e.g. 1,2,3). Leave blank for non-class staff. For the Learning Schedule, blank means unassigned (excluded from year groups). |
| Order | All | Display order. Lower numbers appear first. |
| WorkingDays | Release | Comma-separated day numbers: 1=Mon through 5=Fri. Blank = full time. |
| Ent1–Ent4 | Release | Entitlement names (e.g. PPA, ECT1). |
| Ent1Sessions–Ent4Sessions | Release | Number of sessions per week (or per fortnight). |
| Ent1Freq–Ent4Freq | Release | weekly or fortnightly. Blank = weekly. |
| CoverRole | Release | Role title for cover staff. If set, person appears in the right panel. |
| Initials | Release, FAB | 2–3 letter initials for avatars. |
| Colour | Release, FAB | Hex colour code (e.g. #e879f9). |
| Status | Release (viewer) | Set to Illness to show the illness banner. |
| Column | Notes |
|---|---|
| StartDate | The Monday of each teaching week, as DD/MM/YYYY. |
| Term | Term number (1–6). |
| Week | Week number within that term. |
| Column | Used by | Notes |
|---|---|---|
| StartDate | Both | Start date as DD/MM/YYYY. For multi-day events, also set EndDate. |
| EndDate | Learning | End date for multi-day events. |
| Session | Both | For after-school events: After School. For session-specific banners in the planner. |
| Type | Both | Blocking types: Half Term, INSET 1–INSET 5, Bank Holiday, Christmas, Easter, Summer Holiday, CLF Conference. These grey out the day. |
| Label | Both | Text shown on the banner or badge. |
| Colour | Both | Hex colour for event banners. |
| Column | Notes |
|---|---|
| Session | Must be exactly one of: After School (for Learning Schedule) or Before School, AM, Lunch, PM, After School (for Release Schedule). |
| Day | Day of the week — Monday through Friday. |
| Label | The text shown in the banner. |
| Colour | Hex colour code. Leave blank for the default. |
| Column | Notes |
|---|---|
| YearGroup | Leave blank for universal (all year groups). Comma-separated for specific groups (e.g. 4,5,6). Specific rows override universal rows with the same Group+Subject. |
| Group | Category name (e.g. Enquiry, Maths, Reading). Leave blank for no heading. |
| Subject | Subject name (e.g. Writer, Mathematician). |
| Colour | Hex colour code. Colours should be consistent across year groups. |
| Order | Sort order within the group. |
| Column | Notes |
|---|---|
| YearGroup | Same pattern as SubjectGroups — blank = universal. |
| Group | Category name (e.g. Reader, Well-Being). |
| Activity | Activity name (e.g. "1 to 1 reading", "Phonics"). |
| Colour | Hex colour code. |
| Order | Sort order within the group. |
| Colourable | Set to true to make this chip's colour dot clickable (e.g. HomeZone). |
| Column | Notes |
|---|---|
| YearGroup | Leave blank for universal rows (e.g. Morning Reg, Story Time). Comma-separated for specific groups. Specific rows override universal rows with the same ID. |
| ID | Short identifier used as a data key. Must be consistent across year groups: reg-am, s1, fab, s2, wash, lunch, reg-pm, s3, story, home, after. |
| Type | Either fixed (non-droppable, e.g. FAB, Lunch) or session (droppable, e.g. Session 1, 2, 3). |
| Label | Display text (e.g. "Session 1", "Fresh Air Break"). |
| Time | Time range string (e.g. "09:00-10:45"). Leave blank for rows with no displayed time. |
| Class | CSS class for styling: fab-row for FAB and lunch, story-row for Story Time. |
| Order | Numeric sort order. Determines the row sequence. |
| HideTime | Set to true to suppress the time display (e.g. for Wash Hands, PM Registration). |
s3 not "Session 3". The label column handles the display name.| Column | Notes |
|---|---|
| Staff | Staff name (must match Staff tab). |
| Day | Day or day range — Monday, M-F for Monday–Friday, Mon,Wed,Fri for specific days. |
| Activity | Activity name (e.g. "Football Club", "Lunch Duty"). |
| Session | Time range (e.g. "12:15-13:10") or session ID (e.g. "lunch", "after"). |
| Colour | Hex colour code for the chip. Leave blank to inherit the staff member's colour from the Staff tab. |
| Column | Notes |
|---|---|
| Date | Date of the removed activity in DD/MM/YYYY format. |
| Staff | Staff name (or staff ID for FAB duties). |
| Activity | Activity name that was removed (or "FAB Duty" for FAB exceptions). |
| Session | Session/time range (optional). For FAB duties, this stores the zone name. |
| Type | Optional. DayActivity (default) or FAB for FAB duty exceptions. |
| Column | Notes |
|---|---|
| Teacher | Staff name (must match Staff tab) or year group code (Y1–Y6, Reception) to apply to all class teachers in that year group. |
| Day | Must be exactly Monday through Friday. |
| Session | Must be exactly one of: Before School, AM, Lunch, PM, After School. |
| Reason | Release reason (e.g. PPA, ECT1, RA). |
All three tools sync via Google Apps Script endpoints. Changes are saved automatically within a second or two. Other devices do not update live — refresh the page to see the latest version. If offline, changes are saved locally and sync when you reconnect.
Fill in Name, Role, YearGroup, WorkingDays (if part-time), and any entitlements. If they provide cover, add CoverRole, Initials, and Colour.
The new person will appear in the relevant panels across all tools.
Set YearGroup to the new year group code (e.g. Y5).
Leave YearGroup blank for universal subjects, or add year-group-specific rows.
Add year-group-specific rows for FAB, lunch, sessions, and wash with the correct times. Add universal rows for Morning Reg, Story Time, etc. (leave YearGroup blank).
Enter the date, label (e.g. INSET Day), and type (Half Term, Bank Holiday, INSET 1, etc.).
The day will be greyed out in the Learning Schedule and the Release Schedule. No slots or chips can be added.
Edit the Time column for the relevant YearGroup rows (e.g. change FAB from 10:30-10:45 to 10:45-11:00).
Switch to the affected year group and verify the updated times appear.
Enter the staff name, day(s), activity name, time range, and colour. Use M-F for every weekday.
The activity will appear automatically on the relevant staff view and year group master view.
Drag staff into the correct zone/day cells for the first week.
This saves the layout as the default template. New weeks will auto-fill from this.
Copy the template forward and make adjustments for absences.