Write it once. Teach it everywhere. · 一次编写,处处可用
The result
Five copies of everything, slowly drifting apart. Hours every week spent formatting instead of teaching.
You write
One plain-text file per deck or worksheet: words, pictures, and a few labels at the top (title, type, who it’s for).
Chalkline makes
This is a whole slide. Open the file and you see:
## starts a new slide. - makes a bullet point. {{< vocab "vote" >}} adds a vocab pop-up, with 中文 and 🔊. That’s most of it.
Try it: open Unit 1: Ancient Greece in the sidebar.
Teacher version
The teacher build makes teacher packets: the same pages plus answer keys, with an orange TEACHER EDITION tab.
Tap or hover a word with a dotted line to see its card: picture, 中文 and a simple definition.
One list, used everywhere
The words live in one spreadsheet. Slides, worksheets, the vocab app and Quizlet/Kahoot exports all read it. English is the goal; 中文 is support, and never appears in quizzes.
Students
Slides, worksheets, vocab. No answer keys.
Teachers
Everything, plus answer keys, speaker notes and teacher packets.
Families
The objectives, the vocab app and only the slides you choose to share.
One label decides who sees a file: audience: [teacher, student, parent]
Which feature will you try first?
The Odyssey 奥德赛: ten years, ten stops, one hero trying to get home.
Press Play, or hover a stop for its story.
Made with AI
This map is about 150 lines of code. An AI assistant wrote it from one paragraph: “Make an interactive map of Odysseus’s journey home: numbered stops, a ship that sails the route, and the story of each stop on hover.”
Maps, timelines, games, simulations: if a web page can do it, a slide can too.
Each one is a working example in this course. Click to jump there.
These links jump between slide decks, too: any slide can link to any other slide.
brand/No more fixing fonts slide by slide.
CLAUDE.md tells the assistant the rules for this courseThe address
https://github.com/insufficientdoubt/chalkline-sample
Then
Your site opens at localhost:4100, in the teacher version. Your copy is yours: change anything.
Just want to look first? The online version: insufficientdoubt.github.io/chalkline-sample
course/units/01-ancient-greece/
index.qmd the unit page: title, objectives
city-states-slides.qmd a slide deck
athens-vs-sparta.qmd a worksheet (web + PDF)
images/ photos for this unit's slides
vocab/data/vocab.csv the 37 vocab words
vocab/images/ vocab pictures (GRC-003.svg = democracy)
brand/ colors, fonts, logos
01-ancient-greece, and rename itindex.qmd, change the title and objectivestype: label on eachvocab/data/vocab.csvHow ready do you feel to make your first unit?
images/CREDITS.md.