Planned Not yet started — this page describes the intended design and build plan.
Overview
Notipa has no concept of non-instructional days today, which means a due date picker on homework or a
fee notice has no idea a given day is a public holiday or a school-declared break. This feature adds a
simple per-school calendar of closed days, and wires it into every place in the app that already deals
with dates.
It's intentionally a calendar of exceptions, not a full scheduling system — no timetables, no
period-by-period class schedules. Just: which days is the school open, and which is it not.
How it will work
Admin management. An admin maintains a list of closed days for their school — public holidays, in-service days, school-declared breaks — each with a label and a date or date range.
Soft warnings, not hard blocks. When a teacher picks a due date that falls on a closed day, the UI warns them rather than blocking the action outright — schools sometimes do want a due date to fall right after a break, and Notipa shouldn't get in the way of a deliberate choice.
Visible to everyone. The calendar itself is visible read-only to teachers and guardians, so a parent can see at a glance why school's out next Thursday.
Reused by report cards. The term start/end dates introduced for report cards live on the same calendar surface, so a school manages one source of truth for its year instead of two.
Development plan
1Data model
New SchoolCalendarEvent model scoped per school: label, start date, end date (single-day events just set both to the same date), and a type (holiday / in-service / other).
Index on the date range so "is date X a closed day" lookups stay fast even with several years of history.
2Admin UI
A simple list/calendar-grid management screen for admins to add, edit, and remove closed days.
Bulk-add helper for common cases (e.g. paste a date range for a two-week break) to avoid one-by-one entry.
3Integration into existing due-date pickers
Shared date-picker component update: closed days are visually marked, and picking one shows a non-blocking warning.
Applied to homework due dates, fee notice due dates, and permission slip response deadlines — the three places Notipa already collects a due date.
4Guardian & teacher view
Read-only calendar view listing upcoming closed days, accessible from the main navigation.
Testing across school-year boundaries (a closed day defined for next year should not affect this year's due-date warnings, and vice versa).
Technical considerations
Warnings rather than hard validation keep this feature from becoming a source of frustrating false blocks — the goal is visibility, not enforcement.
No recurring-event logic (e.g. "every Saturday") in the first version — each closed day or range is entered explicitly, since public holidays don't recur on a fixed weekly pattern anyway.
Designed to be reused as the backbone for term dates, keeping one calendar data source instead of two overlapping ones.