weekschedule
A LaTeX class for creating reasonably attractive (or at least not
hideously ugly) schedules.
Description
I created the weekschedule class to make visual
representations of my semester schedule to post on the door of my
office. It supports a small range of options for configuring how the
schedule renders, including 12 vs 24 hour time and 5 or 7 day weeks.
It’s based on TikZ and produces a landscape, single page document ready
for taping to any office door.
This project was almost 100% vibe coded, so user beware. I seems to
work fine for my use cases, but I have not pushed it terribly hard. If
you do encounter any issues, feel free to reach out and I can take a
look at getting it fixed. If you’re interested, it was made by first
having Claude Sonnet create a one-off, hard coded schedule, and then
having Opus write a class to emulate the schedule using an interface
that I specified. It did take a little iteration, but the whole thing
went surprisingly smoothly.
Installation
LaTex looks for class files within the working directory, as well as
within standardized directories (called a Tex tree) on your machine. The
easiest way to use this class is to simply dump it into the same
directory as the LaTex file you’re working on, and use
weekschedule as the document class. You’ll need to refer to
the documentation for your LaTex distribution for details on where to
put the .cls file for systemwide use.
Using Examples
Example files are located in the examples/ directory.
They can be compiled directory from the project root using,
$ pdflatex examples/weekly_schedule.tex
Quick Start
\documentclass{weekschedule}
\scheduletitle{My Weekly Schedule}
\timefrom{8:00}
\timeto{17:00}
\twelvehourtime
\eventclass{Work}{255,200,200}
\event{Work}{Meeting}{Monday}{9:00}{10:00}
\begin{document}
\printschedule
\end{document}
Documentation
Out of laziness, I AI generated some docs. I’ll eventually get around
to writing “real” documentation, but for now this appears correct and
may be useful. The slop docs are available in the doc/
directory.
TODO
There are a couple of specific features that are currently missing
from the class.
- Support for overlapping events
- Actual documentation–the existing docs file was one-shot AI
generated from the source code.
License
Copyright (c) 2026, Douglas B. Rumbaugh
This work is licensed under the Modified BSD License (3-clause BSD
License). See the LICENSE file for the full license
text.