What's shipped
Release notes for every CampusKit version. Get the latest from the download page — the app also updates itself.
[0.1.1] - 2026-09-01
Website
- Brand-new campuskit.app: Astro 5 + React + Tailwind v4 + GSAP in
site/, built static for Cloudflare Pages. Dark lime design matching the app, WebGL aurora hero, scroll-driven parallax and reveals, hand-built HTML app mockups, real Polar buy links, FAQ, changelog page rendered from this file, legal pages (privacy / terms / refunds) and a 404.
App
- The real CampusKit mark everywhere: a lime badge variant of the app icon in the header and setup wizard, the window icon on Windows/Linux, and the Dock icon in dev runs.
- macOS builds now also produce a zip artifact so electron-updater has a feed to update from (installing updates on macOS still needs code signing; until then the app notifies and users grab the new dmg).
Licensing
- CampusKit Pro: Polar-backed license keys with a Settings → License page — buy links ($5/year or $24.99 lifetime), key activation, re-check and remove.
- Free core stays free; AI chat and the MCP server now sit behind the Pro gate with a visible-but-locked upsell. Gating is enforced in the main process, not just the UI.
- Honest DRM: re-validation at most every 3 days, a 14-day offline grace period, and no lock on network failure — only a confirmed lapse downgrades, and your data is never touched.
- Re-check now says what actually happened (re-validated, offline grace, or no longer valid) instead of always claiming success, and a rotated/replaced key explains itself.
- A CampusKit Pro step in onboarding: buy or activate a key during setup, with the plan reflected in the final summary.
- IPC errors shown in the UI no longer carry Electron's "Error invoking remote method" prefix.
0.1.0 - 2026-08-31
The first release. Everything below shipped between the initial commit and today.
Courses and grades
- Semesters, courses and assignments with full CRUD, course colors, meeting times (weekday, time, room) and per-course syllabus attachments.
- Live grade engine: weighted categories with per-category drop-lowest, direct-weight fallback, and ungraded work excluded from the denominator. Every number is computed from real data, never faked.
- "What do I need on the final": required average on remaining weight for a target letter, with impossible and already-locked states handled.
- Letter mapping with per-course configurable cutoffs, plus pass/fail courses excluded from GPA.
- Semester and cumulative GPA with a configurable grade-point scale and a what-if overlay on course detail.
- Course detail page with category breakdown, inline score editing and a target picker.
- Archive flow: archived semesters leave the switcher but keep feeding cumulative GPA.
Time
- Timetable: a Mon to Fri time-axis grid of course meetings (weekend toggle), course colors, current-time line and today highlight.
- Calendar: month and week views merging due dates, exams and class meetings, with a day peek panel.
- Recurring assignments ("every Friday until semester end") with edit-one vs delete-series handling.
- Notifications: due today, due tomorrow and class-in-15 reminders with per-type toggles and a quiet hours editor.
- ICS import (Canvas and Google feeds, file or paste) with a review step and re-sync dedupe, plus ICS export.
- Focus timer: pomodoro with course tagging, a mini always-on-top window and persisted sessions.
- Study log: hours-per-course weekly chart built automatically from focus sessions.
Habits and to-dos
- Daily habit check grid with streaks and weekly percentages, archiving, and a to-do list with clear-done.
AI
- Syllabus import: drop a PDF or paste text, review the extracted draft (course, meetings, grade weights, dated assignments) and create everything in one click.
- Natural-language quick-add: "hist essay next friday worth 15%" becomes a prefilled assignment. Works as a plain form with no key.
- Flashcards: decks with an again/hard/good review mode and AI generation from pasted notes.
- Ask AI chat: an in-app assistant that answers questions about your courses, grades and schedule through the same tool registry as the MCP server. Read-only by default, with a separate opt-in for writes.
- Three chat providers behind one abstraction: Anthropic and OpenAI via your own key, or a ChatGPT Plus/Pro subscription through an experimental, unofficial sign-in.
- Keys and tokens are encrypted with the OS keychain and never touch the renderer. Every AI entry point degrades gracefully with no key.
Degree planner
- Requirements by category (major, minor, GE, elective) with done, registered and planned status, units and a free-text planned term.
- Graduation progress ring against an editable unit target, with per-category units-done counts.
App shell and platform
- First-run onboarding wizard: welcome and theme, semester, AI setup, courses (manual or syllabus import), degree planner and a summary. Re-runnable from Settings, and existing installs are never re-onboarded.
- MCP server (opt-in): 12 tools over streamable HTTP on localhost, read-only by default with per-tool write permissions, so Claude Desktop, Claude Code and other MCP clients can operate the app.
- Command palette (Cmd+K) for navigation, quick-add and search, plus a system-wide Cmd+Shift+N quick-add hotkey.
- Settings with section navigation: appearance, AI, MCP, notifications, focus, data and setup.
- Dark theme as the flagship with a derived light theme and system-theme follow.
- Data safety: JSON export, versioned daily auto-backups with restore, WAL checkpoint on quit and corrupted-database recovery.
- Auto-update from GitHub Releases with an in-app "Check for updates" flow showing download progress and a restart button. Updates publish to a public releases repo while the source stays private.
- Packaging via electron-builder: macOS dmg (Apple Silicon and Intel) and Windows installer, with a new app icon (dark squircle, lime mortarboard).
- Local-first throughout: SQLite on your machine, bundled fonts, no runtime CDN.
Fixed
- Sidebar collapse animation ballooning caused by rounded-full interpolating against the still-wide box.
- Stale rail tooltips all appearing at once after collapsing the sidebar.
- MCP server hardened against DNS rebinding, and backup restore paths validated.