End of life · until further notice
The project works. It isn't shipping.
20 September 2026
semester.fyi is done. It reads a real gradebook, keeps a history Schoology doesn't, and gets your grade right to the decimal. It's not being released, and the reason is a clause in a terms of service, not a bug.
What it was for
Schoology only shows you what's true right now. When a due date moves, the old one disappears. When a score changes, there's no trace of what it used to be. And if something you turned in gets marked missing, you're arguing from memory against a system that doesn't keep one.
semester.fyi was built to be the thing Schoology can't be for itself: a record. Every deadline change, score edit and rewritten instruction, timestamped from the day you connect your account. It was never meant to be a chatbot sitting on top of your grades. The point was the history, and history is something nobody can go back and fill in later, me included.
The grade engine is the part I'm proudest of. There's no AI anywhere in it, on purpose, because a grade isn't something you let a model guess at. It reads the syllabus rules (weighted categories, dropped scores, rounding), works out the number on its own, and shows how it got there. So instead of just “82%”, you'd see “82%, and the only thing pulling it down is three zeros in a category worth 10%.” On every real gradebook I tested, it matched Schoology's number exactly.
The assistant actually knew your classes: the syllabus, the handouts, what was due, what happened that week. The browser extension tied the two systems together. And the feature that mattered most was a small one. When you submitted something, semester.fyi noticed and saved the time. If that assignment later showed up as missing, you had proof you turned it in, something you could show a teacher calmly instead of getting into an argument you can't win.
What stopped it
I read the terms of service properly. At the end, which is the wrong time to do it.
semester.fyi works inside your own logged-in Schoology session and reads your own gradebook, so I wanted to know exactly where the line was before showing it to anyone. I read the general terms of use and the developer terms of use start to finish.
Both prohibit automated data collection, and automated access to the platform in general, without written permission. That's clear, and it applies here.
Getting written permission was the obvious next step, and that goes through a developer agreement. The agreement just doesn't fit a project like this one. It's written for companies, not individuals. It limits how you can promote what you build. And it asks you to share your roadmap with the company before you're allowed to start, which here would mean the same company this was built to keep an honest record of.
To be clear, nothing was hidden and nothing was unfair. The terms are easy to find and clearly written, and they're reasonable things for a company to ask for. They're just not things I can do, and every way around them led back to asking that same company for permission.
Where it stands
The code still runs. Right now it can pull a gradebook, build the history, catch a mismatch and show its math. Nothing is broken. It's finished, it works, and it's just sitting there.
I'm not going to spin that into something it isn't. There's no pivot and no announcement coming. I built something I'm proud of and I can't release it, and that's disappointing. It doesn't need a lesson tacked on the end.
Some of it does carry forward. I have a grade engine that gets the math right where most software only gets close, a design for tracking changes that I still think is the right one, and a new habit of reading the contract before I build on someone else's platform.
What this means
- Sign-ups
- Closed. There's no waitlist, because there's nothing to wait for yet.
- Existing data
- Still there. Nothing has been deleted.
- Coming back?
- I honestly don't know. “Until further notice” means exactly that. It isn't a soft yes.
- Schoology
- Not affected either way. semester.fyi only ever read your data. It never changed anything in a gradebook.