Daily Lesson Plans: Turning Notion Schedules into Print-Ready Teacher Briefings
A Claude Code skill that queries Notion for today's teaching schedule and produces a clean, printable Markdown table for each teacher.
The Problem
Our homeschool day is split between two teachers: Mom handles mornings, Dad handles afternoons. The full schedule lives in a Notion database called Daily Time Blocks — rows for each time slot, linked to lesson plan pages, tagged with which children are involved and which teacher is responsible.
The problem is that Notion on a phone at 7:30 AM is not a great teaching tool. You're swiping between database views, expanding relations, trying to remember which block links to which lesson. What each teacher actually needs is a single sheet of paper: a table showing time, block name, who's involved, and what lesson plan to pull up.
What the Skill Does
The daily-lesson-plans skill takes a teacher name — "Dad's lesson plans" or "what should Nurul teach today" — and produces a print-ready Markdown file. Under the hood, it:
- Resolves the teacher name to a Notion user ID (Dad/Matt/Ayah all map to one ID; Nurul/Mom/Ibu to another)
- Determines today's day of week in Jakarta time
- Queries the Daily Time Blocks database, filtering by day abbreviation in a multi-select array
- Extracts time ranges, block names, recipients, teacher assignments, and linked lesson plan URLs
- Builds a Markdown table sorted by start time, with the named teacher's rows bolded for quick scanning
- Saves to
~/Documents/lesson-plans/lesson-plan-YYYY-MM-DD-teacher.md
Design Details
A few things that seem small but matter in practice:
- Weekend rejection. If today is Saturday or Sunday, the skill says so and offers to check Monday instead. No point generating an empty schedule.
- Teacher fallback. If a time block has no teacher assigned, it displays "Helper" rather than leaving a blank cell. This happens for blocks like "Free Play" that don't need a specific adult.
- Bold highlighting. In the output table, rows belonging to the requested teacher are bolded. When Dad prints the full schedule, his blocks stand out at a glance while he can still see the full day's flow.
- Lesson plan links. Each row includes clickable Notion URLs for the linked lesson plans. On the printed page these show as text; on screen they're live links.
In the Workflow
This skill is often the first step in a chain. The print-lesson-plans skill calls it to generate the schedule file, then sends it to the printer, then fetches and prints each linked lesson plan page. But daily-lesson-plans also works standalone — "show me Dad's lessons today" gives you a quick screen view without printing anything.
The output file uses A4 PDF front-matter (margins, format, print background) so it's ready for md-to-pdf conversion without modification. This convention keeps the printing pipeline simple: every Markdown file in the system is already formatted for paper.
Comments ()