Every feature, organized by the moment it matters.
ScheduleLock keeps a small surface area on purpose. Here's everything it does, grouped by where it shows up in your day.
Knows what kind of day it is.
ScheduleLock understands rotating schedules the way generic alarm apps never will. Set your cadence once at the start of the year — it tracks every day for the rest.
Rotating Schedules (2–8 day)
A/B block, odd/even, or any 2-, 3-, 4-, 6-, or 8-day rotation. The cycle advances each weekday and the next school day is always correct.
Traditional & Day-of-Week
No rotation? Build a normal weekly schedule, or set per-weekday alarm groups for a modified-block week. The reliability features still apply.
Multiple Schedules
Keep separate schedules for fall and spring terms, or a 4×4 / trimester model — switch the active one at the semester break.
Term Dates & Weekends
No alarms before the first day of school or after the last, and Saturdays and Sundays stay silent no matter what the rotation says.
Breaks & Holidays
Mark days off on the calendar and alarms stay quiet — when your rotation pauses for a break, it picks right back up where it left off. Schedule Import can fill in a whole term's breaks at once.
Set up a teammate's phone in seconds.
Send your whole schedule to another teacher, or bring in theirs — as one file, no accounts and nothing sent over the network.
Share Your Schedule
Rotation, term dates, breaks, alarm groups, and alarms — export it all as a single file from Schedule Settings, sent however you already share files.
Review Before You Import
Open a shared file from Files, Mail, or wherever you saved it. Every group and alarm shows an on/off switch before anything saves — nothing turns on silently.
Sound-Safe Updates
Re-importing a schedule you already have keeps your custom sound choices — only the calendar and alarms refresh.
Organized the way you actually plan.
Group alarms by the day type they belong to — A-day morning routine, B-day afternoon meetings, every-day commute. Toggle a group on or off without rebuilding it.
Group Organization
Name a group ('A-Day Mornings'), assign it a day type, and add as many alarms inside as you need.
Per-Alarm Customization
Time, label, sound, and snooze duration on every alarm. Defaults are sensible; everything is overridable.
Weekly Cadence Option
Need an alarm only on Tuesdays? Set a weekly cadence inside any group. The rotation logic still applies.
When the day goes sideways.
Snow day, late start, dentist appointment — overrides cover the unpredictable. They auto-reset, so you never have to remember to flip them back.
Full Day Off
One tap silences every alarm for today. Tomorrow returns to your normal schedule automatically.
Custom Override
Toggle individual alarms for today only — useful for late starts, half-days, or one-off appointments.
Auto-Reset
Every override clears at midnight. You can't accidentally leave an alarm off for the rest of the week.
Built to actually fire.
Plenty of third-party alarm apps lean on background timers, which the OS is free to kill. ScheduleLock uses AlarmManager — the same foundation Android's stock clock app uses — so alarms fire even if the app has been swiped away.
AlarmManager Backbone
Exact alarms scheduled at the OS level. No background services, no battery drain, no missed mornings.
Reboot Survival
After a phone restart, ScheduleLock automatically reschedules every upcoming alarm. You don't open the app.
DND Bypass
Critical alarms ring through Do Not Disturb on both iOS and Android. Configurable per alarm.
Offline · No Account
Everything is local. No sign-in, no cloud sync, no internet connection required to fire an alarm.
Set up in under three minutes.
Guided Setup
Three short steps: pick your rotation, set term dates, build a starter alarm group. The app does the math.
Examples Built In
Pre-filled times for typical bell schedules. Edit, keep, or replace — whatever fits your day.
What's being built next.
A guided setup flow for teachers juggling multiple terms or more than one school — right now that means running separate schedules and switching the active one by hand. We'll announce dates when they're real, not before.