DeadlineSync.

The short version

DeadlineSync is a free Chrome extension that copies your Moodle assignment deadlines into your Google Calendar. It runs entirely inside your browser. There is no DeadlineSync server, no account to create, and nothing for us to collect, because your data never reaches us. No analytics, no telemetry, none of it.

The extension talks to exactly two places, and both of them are already yours: your Moodle site, and your Google Calendar.

What DeadlineSync reads from Moodle

It reads what it needs in order to know when your work is due, from the Moodle site you are already signed in to.

  • Your assignments. The assignment name exactly as your instructor wrote it, the course it belongs to, the due date, whether you’ve handed it in yet, and the ID Moodle gives the item so the same deadline never gets added twice.
  • Your Moodle calendar feed. To keep your calendar current in the background, DeadlineSync uses Moodle’s own calendar export link. That link covers your whole personal Moodle calendar, not only assignments, so other things on it (quizzes, course events, anything you added yourself) may be copied across too.
  • The sign-in details the page is already using. To ask Moodle for your deadlines, the extension has to ask the way the page itself does, so it borrows the session details Moodle has already put on the page. They go nowhere except back to your own Moodle. So that the background check doesn’t have to reload a page every time, the current session key and your Moodle user number are kept in your browser; both are meaningless anywhere else, and both are discarded when you disconnect.
  • One Moodle page, in the background. To notice a new assignment while you aren’t looking, the extension loads your Moodle dashboard every couple of hours and reads the same “needs your attention” list it shows you. It uses the login you already have, changes nothing on the page, and checks that the page really is your account before trusting a word of it. If you’re signed out, it does nothing and falls back to your calendar export link.
  • Your calendar export link. If you don’t have one yet, DeadlineSync asks Moodle to create it, exactly as you would from Moodle’s own Calendar → Export page. That link contains a personal access token, and it is saved in your browser so the background refresh can update your calendar even when no Moodle tab is open. When the background refresh uses it, the link is sent on its own, without your Moodle cookies— the token in the link is the only thing Moodle needs, so nothing about your session goes with it. Nothing else on your Moodle account is touched or changed.

All of this stays in your browser and travels only between your browser and your own Moodle server, over the login you already have.

What DeadlineSync does in your Google Calendar

Nothing at all until you approve it on Google’s own sign-in screen. It asks for one permission, the one Google describes as “Make secondary Google calendars, and see, create, change, and delete events on them.”

Secondary is the word that matters: this permission reaches only calendars DeadlineSync made itself.

The exact permission, if you’d like to check it against the extension’s listing: https://www.googleapis.com/auth/calendar.app.created

Inside your Google account it does four things:

  1. 1Makes its own calendar. A dedicated calendar called “Moodle Assignments”, which is where every deadline goes. Your existing calendars are never written to.
  2. 2Adds your deadlines to it, in the color you chose. Each event is created in whichever color you picked in Settings. (The color of the calendar itself, the dot beside its name in your sidebar, is assigned by Google and isn’t something DeadlineSync is able to change.)
  3. 3Keeps them current, and clears them once you’re done. Events are updated when a due date moves. After you hand an assignment in, the matching event is deleted by default, so your calendar shows only what’s still ahead of you. You can change that in Settings under “When submitted”, to have the event marked done instead, or left where it is.
  4. 4Adds a short “new assignment posted” note, if you want phone alerts. The extension can’t reach your phone directly, but your calendar already does, so it drops a brief entry on today with an alert attached and Google passes it along to your devices. It deletes itself within a couple of hours, and it only appears at all when the desktop notification went unseen. Switch it off under “New assignment alerts” and nothing like it is ever created.
What this permission cannot do. DeadlineSync never asks for access to your calendars. It asks only to make one of its own and look after that. Your other calendars — work, personal, shared, subscribed — aren’t merely left alone as a matter of good manners: they sit outside what Google authorized, so the extension is incapable of reading or changing them. It cannot list your calendars, cannot see when you’re free or busy, cannot change sharing or permissions, and cannot delete a calendar. The only calendar it can see is the one it made for you.

Where your data lives

On your own computer, and in accounts you already control.

  • Your cached assignment list, the record of what you’ve handed in, your Moodle address, your calendar export link, and your settings are kept in your browser’s own storage, on that computer.
  • None of it follows you to another device. DeadlineSync uses local storage only, so nothing is copied between your machines.
  • Your Google sign-in token is not kept by DeadlineSync. Chrome holds it, and the extension asks Chrome for it each time it needs one. It’s never written into the extension’s own storage. (The token that does get stored is the Moodle one, described above.)
  • The extension keeps a short local record of its last 30 sync attempts: the time, what set it off, whether it worked, and if a check was refused, why. It has no screen in the interface, exists only so a sync problem can be traced, and never leaves your computer.
  • A few facts about your university’s Moodle, learned from the answers it already gave: whether its calendar export link works without being signed in, what its sign-in page looks like, when it last recognised you, and roughly how long it keeps you signed in before asking again. This is what lets one extension behave correctly on universities that run Moodle very differently, and it is how DeadlineSync knows to tell you that you have been signed out. It describes the site and your session, never your coursework, it stays on your computer, and “Reset connection” clears it.
  • The record of a handed-in assignment is discarded automatically 90 days after it was due.
  • DeadlineSync never learns who you are. It doesn’t ask Google for your name, your email address, or your profile.

Your deadlines move directly between your browser, your Moodle, and Google. They never pass through a DeadlineSync server, because there isn’t one.

What we collect

Nothing. There are no accounts and no backend to receive anything. We don’t collect your coursework, your calendar, your email address, your browsing, or anything else about you. Since your data never reaches us, we cannot sell it, share it, or use it for advertising, and we don’t.

Google API Services User Data Policy

DeadlineSync’s use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.

In practice: anything DeadlineSync receives from Google Calendar is used only to sync your deadlines, the one thing you installed it to do. It isn’t passed to anyone else, isn’t used for advertising, isn’t used to build a profile of you, and isn’t read by a person. None of that is even possible, since there’s no server to send it to and the data never leaves your browser and your own Google account.

Permissions the extension requests

Each one is here because the sync needs it.

Reading the page you’re onactiveTab
Lets the extension read your Moodle page when you press “Sync now”: that tab only, and only for that click.
Running its reader on that pagescripting
Runs one small function on your Moodle page to pick up the assignment names and due dates it’s showing. It changes nothing you or your instructors put there. It does add one thing: when a sync finishes after the extension’s own window has closed, a short confirmation card appears on that page telling you what was added. It disappears on its own, reads nothing from the page, and sends nothing anywhere.
Telling you about new worknotifications
Three things, all of them about your own Moodle. A desktop notification when your Moodle shows an assignment it hasn’t shown before; a notice when Moodle has signed you out and DeadlineSync can therefore no longer check for new work; and a fallback for reporting a finished sync when no extension window is on screen. Clicking one opens your own Moodle site — the assignment itself, or its sign-in page. Nothing outside waking hours, never more than one per check, at most one sign-out notice per sign-out, and never used for marketing. Decline it and the extension falls back to a count on its icon.
Signing in to Googleidentity
Gets the token needed to talk to Google Calendar. It isn’t used to look at your Google profile.
Remembering your settingsstorage
Keeps your preferences and cached assignments on your own machine, so the extension works between sessions without a server.
Waking up on a schedulealarms
Runs the background refresh that keeps your calendar current without you having to open the extension, plus a short check every 15 minutes that does nothing at all unless a scheduled refresh was missed — which is what happens while your computer is asleep.
Access to your Moodle site
Every university runs its own Moodle at its own address, so there’s no list anyone could ship in advance.
About the optional ones. Site access is an optional permission, and it is never requested when you install the extension. It asks for one site, yours, the first time you sync, and you’re free to say no. Permission to show a notification is asked for in that same prompt, so there is one interruption rather than two; you can decline either, and nothing else is ever requested. If you said no and change your mind, the switch in Settings under “New assignment alerts” asks again.

DeadlineSync also runs no remote code. All of its JavaScript, CSS, and fonts are inside the package you installed; nothing is downloaded and run later.

Third parties

There are none. No analytics, no telemetry, no crash reporting, no ads, no tracking, no fingerprinting.

The popup makes zero third-party requests. Even the fonts are bundled in the extension rather than pulled from a font service, specifically so that opening DeadlineSync contacts nobody. You can watch this for yourself in Chrome’s developer tools.

The only outside addresses anywhere in the extension are three links: the developer’s LinkedIn page and a “buy me a coffee” page, both in the small credit line at the bottom of the popup, and an “Open Google Calendar” link on the confirmation card described above. None of them is contacted unless you click it, and if you do, you’re simply visiting those sites as you normally would, under their own privacy policies.

Your choices and control

You can undo any part of this, whenever you like.

Reset the Moodle connection.

In Settings, “Reset connection” clears your saved Moodle site, your stored calendar export link and its token, every cached assignment, and everything DeadlineSync had worked out about that site and your session. It deliberately leaves your preferences (language, reminders, color, event type), the link to your “Moodle Assignments” calendar, your Google authorization, and the site permission you granted, so reconnecting doesn’t mean setting everything up from scratch.

Remove the extension.

Uninstalling DeadlineSync stops all syncing at once and clears everything it kept in your browser. It can’t reach into your Google account, though: the “Moodle Assignments” calendar, the events already in it, and the access you granted all stay until you remove them yourself.

Revoke access at Google.

You can withdraw DeadlineSync’s access to your calendar at any time from myaccount.google.com/permissions. To clear the synced deadlines themselves, delete the “Moodle Assignments” calendar in Google Calendar.

Children’s privacy

DeadlineSync is made for students using their own Moodle and Google accounts. It isn’t aimed at children under 13, or the equivalent minimum age where you live, and we don’t knowingly collect anything from them.

Changes to this policy

If this policy changes, we’ll update the date at the top and post the new version here.

Contact

Questions about privacy? Email support@deadlinesync.app.