Skip to content

What is uwwoe?

uwwoe is a course-first, anonymous, offline-indexed academic-planning tool for University of Waterloo students. It is an exploratory layer on top of the public Waterloo Kuali catalog. It is not Quest, not an official advisor, not UWFlow.

Two primary modes

  • Kanban — a term-based course planning board. This is your editable student state: which courses you have taken, which you plan to take in Fall 2026, Winter 2027, and so on. You can drag courses across terms, mark completions, and search the full course library.
  • Canva — a full-screen projection of the universal course graph. The Canva renders every course in the published index with prerequisite, antirequisite, and cross-listing edges. Your Kanban state is layered on top as an overlay so you can see, at a glance, which courses your plan has already unlocked and which it has not.

One floating widget

The Advisory widget is not a third mode — it sits over the Kanban or the Canva. It answers four questions:

  1. What am I missing for course X? — what prerequisites are still open for a target course.
  2. What am I missing for credential Y? — what requirements are still open for a degree, major, minor, option, or specialization.
  3. Which alternative paths satisfy this gap? — for a missing requirement that has alternatives, which combinations work.
  4. What does taking this course unlock? — given an extra course on the Kanban, which downstream courses or credentials would become reachable.

Every Advisory answer carries one of six statuses:

StatusMeaning
satisfiedThe requirement is met by your current Kanban state.
not_satisfiedThe requirement is not met and no alternative is available.
partialSome sub-requirements are met, others are not.
unknownuwwoe cannot tell — typically because the requirement contains opaque source text that the parser did not resolve.
conflictTwo parts of your plan contradict (e.g., antirequisite courses both present).
not_applicableThe requirement does not apply to your state.

See Status meanings for the full taxonomy with examples.

What “source-backed” means

Every academic claim uwwoe makes is tied to a source_reference — a pointer back to the specific Kuali catalog excerpt that supports it. Click any course, requirement, or explanation node, and you can see the exact prerequisite text the answer was derived from. There is no hand-tuned override that isn’t traceable.

What “anonymous” means

uwwoe has no accounts, no email, no password, no student number. Your plan persists via an opaque bearer token (≥256 bits, transmitted only via the Authorization header). The backend stores an HMAC verifier — it cannot reconstruct your token. There is no audit log of academic state contents. Hard delete on request returns only a minimal tombstone.

See Your plan and the privacy ADR for the full posture.

What “offline-indexed” means

The backend never scrapes Waterloo at request time. A separate offline pipeline (the scraper CLI) builds and publishes a versioned SQLite index artifact. The backend serves only from that read-only artifact. Index publication is a deployment operation, not a runtime one.

See Architecture overview for the data flow.

Who is this for?

Current best fit: undergraduate students in the Faculty of Mathematics or engineering programs whose support requirements draw from Math subjects. Other faculties are not yet indexed — see Scope and coverage.

uwwoe is designed for exploration. It helps you ask “what if I take this course?”, “what do I need for a Pure Math minor?”, “what does CS 446 actually unlock?” It is not for filling out your final registration plan — Quest and your advisor own that.