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:

  1. Resolves the teacher name to a Notion user ID (Dad/Matt/Ayah all map to one ID; Nurul/Mom/Ibu to another)
  2. Determines today's day of week in Jakarta time
  3. Queries the Daily Time Blocks database, filtering by day abbreviation in a multi-select array
  4. Extracts time ranges, block names, recipients, teacher assignments, and linked lesson plan URLs
  5. Builds a Markdown table sorted by start time, with the named teacher's rows bolded for quick scanning
  6. 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.