A private semester planner
Hand over the syllabus.
Get the semester back.
Syllabrain reads the file — every dated thing in it, plus the office hours, the grade breakdown and the late policy you would otherwise reopen the PDF for. Then it waits. Nothing reaches your calendar until you tick it.
Found — nothing added yet
Under a minute
Nothing lands on its own
No password
Private by default
Syllabus reading
It reads the file, not a copy you paste in.
Upload a PDF or a photo of a printed schedule, up to 20 MB. Two passes run at once: one for every dated item, one for everything else worth keeping — contacts and office hours, the grade breakdown, required materials, the late policy, the campus resources buried on page eleven.
Every row says where it came from. Select one and it quotes the line it was read out of, and the page it was on.
Points and weight, both. A 50-point quiz worth 5% is neither on its own.
A syllabus with no dates in it is not a failure. Plenty list topics by week and never print a due date. The file stays in your library for everything else it says.
Upload the same file twice and it tells you before it reads it again — including when you already read it for a different class.
What it asks for
Eight to ten pages, APA, with at least six peer-reviewed sources. Submit the proposal in week five.
Source line · page 7
The rule underneath everything
Three things can suggest work.
None of them can write it.
The reader offers dates. The assistant offers a card. The planner offers a run of sittings. Every one of them ends at a button you have to press — and the times are yours to change before you press it.
The reader
Offers dates
Fourteen rows off a PDF, each with what it asks for, what it is worth, and how sure it is. You tick the ones you want.
The assistant
Offers a card
It has no way to add anything. Ask it to plan a revision week and it draws the week as rows with checkboxes and editable times.
The planner
Offers a run
Sittings laid out backwards from a deadline. Untick the days that do not work before you save the set.
“It can only offer, the same way the review screen offers dates.”
The calendar
A week you can shove things around in.
Week and month, and both live in the address bar — so any particular week is a link you can bookmark or send to yourself. Four ways to move something, and every one of them tells you where it will land before it lands.
Drag, and know where it lands first
The column you are over picks up a line every fifteen minutes and a dashed outline of the block at the time it would take. Wherever you took hold of it is where you are still holding it — grab an hour-long class by its middle and its middle is what follows the pointer, not its start.
Pull the bottom edge to change the end
The grip appears on hover, snaps to the quarter hour, and moves only the end — where an event starts is what dragging the block itself is for. Pull the edge of a deadline and it stops being a moment and becomes a block, which clearing the end time undoes.
Or never touch the mouse
Tab to an event and hold Alt — ↑ and ↓ move it a quarter hour, ← and → move it a day and keep the time, Alt+Shift with ↑ or ↓ changes when it ends. One press is one step, and a plain arrow still scrolls the page: tabbing onto an exam should never be able to move it.
Two things at once sit side by side
The column splits between them rather than stacking them, so four overlapping events are four narrow blocks. Narrow is deliberate: the alternative is one of them being hidden underneath.
On a touchscreen, hold still for a moment
A finger has to rest about a third of a second before a drag begins — which is what lets you swipe to scroll a page full of events instead of dragging one of them by accident.
It opens where you are
This week opens scrolled to the now-line rather than at the top of a fifteen-hour column. Any other week opens on its first event.
Clash warnings
A clash should be a decision, not a surprise.
Give an event a day and a time and, if something is already in that slot, a line appears under the fields naming it. It counts your classes too, not only your events — plan revision at two on a Tuesday and it will tell you that is when the lecture is.
It never stops you saving. Two things at once is sometimes exactly right, and the app does not pretend to know which.
Title
Date
Starts
Runs into SPAN201, 1:00–2:15pm — a class meeting.
Today
Look one week ahead. Or the rest of the term.
One week, two, thirty days, ninety, or everything left in the semester — and the choice lives in the address bar, so it survives a reload and can be linked to. Past a fortnight the list grows day headings, because ninety days of deadlines read as one flat list is not a list anybody can use.
Ticking something off makes it vanish from here. Today only holds what is still outstanding. It is still on the calendar, struck through, and the tick there undoes it.
Archived classes keep their deadlines. Archiving hides a timetable, not the work.
“~2h” is a guess. “2h (per syllabus)” is a promise. One is the reader's estimate from the work described; the other is the figure the instructor printed. One is worth adjusting.
Classes today
Next two weeks
Problem Set 4 — details
Six proofs, two coding questions.
I have six hours before the CS101 midterm on Friday. Using my notes from the last three weeks, plan it in 90-minute blocks around the classes already on my calendar.
Your notes from the 3rd onward are heaviest on shortest paths and heaps, and your own line — “ask in office hours: why a negative edge breaks the invariant” — has not been answered anywhere since. SPAN201 has you at 1pm Tuesday and Thursday, so four sittings fit in the evenings.
Proposed — nothing added yet
Thursday 2:00pm runs into SPAN201 — unticked for you.
Ask
A panel that has already read your semester.
It sits beside Today, and it is not starting from nothing. Before you type a word it can see:
Every class — archived ones included, with its “About this class” text.
Your calendar — about six weeks back to six months ahead, ticks and study blocks and all.
Every note you have written — and the parts you highlighted come through as highlighted, which is a quiet way of telling it what mattered.
Every syllabus summary, in full — so “what does my other class's late policy say” is one question, not a hunt.
Dates you have not imported yet — still sitting on a review screen.
Whichever row you have selected — so “this” has something to mean.
Conversations are kept, History has the earlier ones, and any answer worth keeping saves into Notes filed under the right class. When it runs out of room it says so, rather than answering as though it had everything.
Notes
Formatting that survives a lecture.
Markdown-ish, with two rules that are deliberately not Markdown — because Markdown was designed for documents and a lecture note is not one.
## Dijkstra Greedy, and only because edge weights are non-negative. - relax every edge out of the closest unvisited node - `O((V + E) log V)` with a heap > The invariant is that a popped > node is final. ==Ask in office hours:== why a negative edge breaks it.
Dijkstra
Greedy, and only because edge weights are non-negative.
- relax every edge out of the closest unvisited node
O((V + E) log V)with a heap
The invariant is that a popped node is final.
Ask in office hours: why a negative edge breaks it.
The whole vocabulary
| **bold** | bold |
| *italic* | italic |
| ~~strike~~ | |
| `code` | code |
| ==highlight== | highlighted |
| ==green:…== | green, blue or pink |
| # / ## / ### | headings |
| - item 1. item | lists |
| > quote --- | a quotation, a rule |
| [words](https://…) | a link |
One newline is one line break
Markdown would swallow it. Here it does not, because people press Enter once between lines of a lecture and every note would otherwise read wrong.
Underscores do nothing
There is no _italic_,
so snake_case and
file_name.pdf are
ordinary things you can type. Anything the app does not understand appears
exactly as you typed it.
Nothing is reinterpreted behind your back
A note stays plain text until you tap Use formatting. A note written last term does not start looking different because a parser shipped.
It saves itself, and keeps what it wrote over
About a second and a half after you stop typing. Every save that covers stored text keeps the old version — the last fifty, per note — and restoring one is itself undoable.
Two tabs cannot overwrite each other
If the same note changed somewhere else, the next save stops and says so rather than landing. Nothing you typed is thrown away: your text stays on screen and you decide.
Ten files a note, 20 MB each
Photos, PDFs, slides, spreadsheets. Attach from the class page as well as the composer, because a photo of the board is taken in the room with that page already open.
Filed by day, and optionally by nothing
A note belongs to a class and a day, and to the lecture it was taken during if you say so. “Not about a class” is a real choice rather than a missing one.
Study blocks
Planned backwards from the thing that is due.
Point the planner at a deadline and it lays sittings out in reverse. They land as ordinary events, so you can drag them, tick them off and delete them one at a time — and deleting the deadline takes all of them with it.
The last session is the day before.
Never two in one day, and never one in the past.
The run-up is capped at a fortnight, however many sessions you ask for.
Planning replaces, it does not add. Run it again and last time's blocks clear first, so you never end up with two sets.
The starting numbers come from the syllabus's own estimate where it printed one — so a three-hour paper opens as three hour-long sittings. You still decide.
Reminders
A 3am alert about a 9am exam is worse than none.
So quiet hours move a reminder to the end of the window rather than dropping it — it arrives when you wake up. The one exception is a deadline that has already passed by then. That one is skipped, because it would only be bad news, late.
Both channels start switched off. Email and browser notifications stay off until you tick them. Nobody is opted in to being emailed.
Up to four lead times — a week ahead through to an hour before. Two to begin with: a day ahead, and two hours. Past four nobody reads any of them.
Study blocks are never notified. A planned week would send one reminder per sitting, and you would learn to ignore all of them.
Preferences are read when it sends, not when it queues. Turn them off today and nothing queued yesterday goes out. Tick the deadline off and the reminder is dropped.
Classes and terms
A class's week is a list of blocks, not one time.
A lecture on Monday, Wednesday and Friday plus a lab on Thursday afternoon is two blocks, each with its own days, start and length — which is also how a rotating timetable that moves a class between periods fits. Eight blocks is the most any class can have.
Six colours, drawn as a three-pixel bar on the left edge of a row and as a tint on the calendar, retuned separately for each theme so a hue picked for a dark ground does not wash out on paper.
Archiving is not deleting
Archive puts a class away: its bars leave the calendar and it drops out of the pickers. Every deadline it owns stays exactly where it was, and you can restore it whenever.
Delete removes a term of work
Every event on it, every study block planned for those events, every syllabus filed against it, every date read out of them, and every note written for it. The confirmation says “Delete?” and nothing else.
CS101
Meeting blocks · 2 of 8
Colour
The rules it keeps
Opinions, held on purpose.
Most of what makes this app usable is a decision somebody had to defend. Here are the ones you will notice.
No password, ever
We send a link. It works from any browser on any device, and each one works once — so open the newest email rather than an older one.
Two themes, no flash
Light, dark, or whatever your device says. The choice is read on the server, so the first paint is already the right colour. It is per-device too: a dark laptop and a light phone are both allowed.
Your time zone travels with you
Every instant is stored in UTC and drawn in the zone you set. Change it while you are away and the whole calendar shifts with you.
Destructive things ask twice, in place
No confirm dialogs. The button becomes “Tap again to delete” and fires on the second press, where your finger already is.
Every row is locked to you
Row-level security on every table, private storage buckets, and an invite allowlist in front of all of it. Your syllabi are not a shared folder.
Nothing here is undoable
And no form warns you. Escape or a tap outside throws away what you had half-filled in. Notes are the exception — those keep their own history, fifty versions deep.
Things that look like bugs and are not
Lifted straight out of the app's own manual, because the honest version is shorter than the marketing one.
The week grid only draws 7am to 10pm.
A month cell shows three and counts the rest.
The tinted class bars are not events.
Dashed means you planned it.
Bring your syllabus
One file, and the term stops being a surprise.
Syllabrain is invite-only while we are in beta. Leave an address and we will send one when there is room.