Privacy Policy

Last updated: 31 October 2026

SideSchedule is a macOS app made by didact.digital Software e.U., Graz, Austria. This page explains what data the app touches, what leaves your Mac, and what never does.

The short version

This website

We count visits with GoatCounter (see “Visit statistics” below); apart from that script, this site loads no third-party scripts. If you arrive through a partner's link (a URL containing ?aff=), we add the partner's ID to the Buy links on that page, so Lemon Squeezy, our payment provider, can credit the partner if you buy. Reading the ID from the link stores nothing on your device. If you also agree in the notice, we keep the ID in your browser's local storage for 60 days, so the partner is credited for a later purchase too. When you start the app for the first time, it opens a welcome page on didact.digital once. If you had agreed, that page hands the ID to the app, which stores it in the macOS Keychain and adds it only to its Buy link. A click on a Buy link takes you to Lemon Squeezy, where their privacy policy applies. The legal basis for keeping the ID is your consent (Art. 6(1)(a) GDPR, § 165(3) TKG 2021). You can withdraw it at any time with the button below, which removes the stored ID from your browser. To have it removed from the app as well, write to hello@didact.digital. The app itself never loads a tracking script.

The script is loaded from Lemon Squeezy’s servers, so their privacy policy applies to that request. The app itself never loads it.

This website remembers whether you chose light or dark mode, in an entry called didact-theme in your browser's local storage. It holds only that choice, stays on your device and is never sent to us. Because it only serves the switch you pressed, no consent is needed (§ 165(3) TKG 2021); clearing your browser data removes it. The animations on the home page use GSAP, which we host on this site ourselves, so no other server is contacted.

Visit statistics

This website counts visits with GoatCounter, an analytics service that works without cookies. We use it to see which pages are read, which links bring visitors here, and how often the download and purchase buttons are clicked. The data is not used for advertising and not to build profiles of individual people. When you open a page, your browser sends GoatCounter the page address, the referring site, the campaign tags in the link (for example utm_source), your browser and screen size, and your approximate location. According to GoatCounter, it stores no IP addresses or user-agent strings and sets no cookies, so you are not recognised across visits or across sites. A click on a download or purchase link is counted as an event with a fixed name, without anything about you. GoatCounter is run by Martin Tournoij (Ireland); its servers are at Hetzner Online GmbH in Finland and Germany. The legal basis is our legitimate interest in understanding how the website is used (Art. 6(1)(f) GDPR). You can object at any time: hello@didact.digital. Blocking the script in your browser also works, and the site stays fully usable. The apps are separate: they contain no analytics and send no usage data.

Calendar data

SideSchedule reads your calendars through Apple’s EventKit framework to display your day. If you create, rename, reschedule, or delete events, those changes are written back to Apple Calendar. Event notes you type in SideSchedule are stored locally on your Mac (and optionally mirrored as Markdown files to a folder you choose, or into the event description in Apple Calendar if you enable that option). None of this data is transmitted to us or to any third party.

Accessibility access

If you enable “Keep Windows Off Sidebar”, SideSchedule uses the macOS Accessibility API to observe and reposition windows of the frontmost app so they don’t slide under the sidebar. This happens entirely on your Mac. No window titles, app names, or usage data are collected or transmitted.

License activation and validation

When you enter a license key, SideSchedule contacts the Lemon Squeezy API (api.lemonsqueezy.com) over HTTPS to activate and periodically validate it. This request includes your license key and your Mac’s hostname (used as the activation label so you can recognise the device in your Lemon Squeezy customer portal). Your license key is stored in the macOS Keychain, not in plain-text preferences.

Updates

SideSchedule checks for updates via the Sparkle framework, which fetches an appcast file hosted on GitHub (github.com). GitHub may log your IP address as part of serving that file, subject to GitHub’s own privacy policy. Update downloads are signed and verified with an EdDSA signature before installation.

Diagnostic report

In the app you can send a diagnostic report to didact. This only happens when you click “Send to didact” in the “Send diagnostic report” window. You see the complete text first. Nothing is transmitted without your click, and your consent covers that one report only.

What it contains: App, version, macOS version, Mac model, language, time, some app settings without secrets, the last lines of the app’s log and, if you enter them, your note and your email address. Your home folder appears as “~” in paths. The app does not write license keys, calendar titles, file contents or notes to its log.

What reports do not contain: No device or install ID, no account, no IP address. The report gets a random report ID, which you see after sending.

Purpose and legal basis: We use the report to find and fix the problem you reported, and we reply if you gave an address. The legal basis is your consent (Art. 6(1)(a) GDPR), which you give by clicking “Send to didact”.

Retention: Reports are deleted automatically after 90 days.

Deletion on request: Write to hello@didact.digital and name the report ID. We delete the report and confirm it. Without a report ID we cannot match a report to you, because we store no identifier.

Where the data is kept: With Cloudflare, Inc. (Workers and D1). The database is located in the EU. Cloudflare may process the request itself on its servers worldwide, at the network edge; the standard contractual clauses in the data processing agreement with Cloudflare apply. Cloudflare may keep request records in its own operating logs.

What we never collect

Payment

Purchases are processed by Lemon Squeezy as merchant of record. Your payment details are handled entirely by Lemon Squeezy and never touch this app or our systems. Details: Lemon Squeezy’s privacy policy

Contact

Controller: didact.digital Software e.U., Unterer Breitenweg 9/3, 8042 Graz, Austria. Questions about privacy: hello@didact.digital