Legal
Privacy policy
This policy is in force for the app, for this website and for its beta form. Two parts concern what has not started yet — sales, and a web version hosted by us — and will be completed before they start: they are marked TODO(founder). A French translation is available (version française); the English text prevails.
The short version
- No account, no analytics, no telemetry, no crash reporting, no advertising. The app never reports anything about you to us.
- Your boards, widget content and settings stay on your device. We have no server that receives them, and we cannot see them.
- The app only talks to third parties for the widgets and features you use — each one is listed below, with when and what it receives.
- AI features run on your machine (Ollama or an in-browser model). Prompts and conversations never go to us or to an AI provider.
Who is responsible
Interact Savescreen is a product of Optexia, its publisher. Optexia’s legal name, address and registration details are in its legal notice: optexia.com/legal. Contact: [email protected]. For this policy, Optexia (“we”) is the “controller” only for the few cases where it actually receives personal data (the beta form, emails you send, purchases — see below). Everything the app stores on your device is under your sole control.
What stays on your device
- Boards, layouts, widget content (notes, todos, kanban cards, links, habits, chat history…) and settings — in your browser's storage (web / installable app) or in a local file (desktop app).
- Tokens (GitHub, Asana), secret calendar (ICS) links and API-key headers you configure: stored locally and never included in exports or backups. In the desktop app, tokens, API-key headers and secret calendar links are encrypted with the operating system's keychain. Where there is no real keychain — a plain browser, or the desktop app on Linux without a keyring service such as GNOME Keyring or KWallet — tokens and API-key headers are stored as-is in local storage (the settings say so), except a token typed into the GitHub CI tile, which is then only kept in memory until the app reloads; secret calendar links are then stored as-is too.
- A license key, if you buy one: stored locally and verified offline — activating it contacts no server.
- Automatic restore points and the backups you export: local files or local storage, under your control.
You can delete all of it at any time: clear the site's data in your browser, or uninstall the desktop app and delete its data folder.
Every third party the app can contact — and when
Nothing below happens for a widget you don't use. “Your browser” means the request comes straight from your device, so the service sees your IP address and ordinary request headers. “The app's server” means the app's own API routes fetch it: in the desktop app that server is a local process on your machine; on a hosted web version it is whoever hosts that version (see Hosted web versions).
| Service | When | What it receives |
|---|---|---|
Open-Meteo (api.open-meteo.com, air-quality-api.open-meteo.com, geocoding-api.open-meteo.com) | Weather widget shown; city search; the “automatic” gradient background (sunrise/sunset) | Coordinates rounded to about 1 km — a major city of your time zone until you pick a place (Paris if the zone is unknown) — or the city name you type. Your browser. |
BigDataCloud (api-bdc.io) | Only when you click Use my location in the weather widget | Your rounded coordinates, to get a city name. Your browser. The position itself comes from your browser's or OS's location service, after its own permission prompt. |
| News feeds — ticker defaults, English first run: BBC, NPR, TechCrunch, The Verge, Ars Technica, CNBC, Google News; otherwise: Google News, France 24, Le Monde, TechCrunch, The Verge, Bloomberg, franceinfo. News widget presets: Hacker News, Lobsters, dev.to, KDnuggets, Data Engineering Weekly, Hugging Face blog, OpenAI news, MIT Technology Review, Lenny's Newsletter, Smashing Magazine, Product Hunt, The Verge, France 24, Le Monde. Plus any feed you add. | News ticker (on by default, the feeds of the category shown) and News widget | A request for the feed. The app's server. In the ticker's Pro AI mode, the server also fetches the linked article pages to summarize them locally. |
| Image hosts of those feeds | When a headline or an article has an image | Your browser loads the image directly from the publisher's image server or CDN (it sees your IP address). |
| Status pages — githubstatus.com, vercel-status.com, cloudflarestatus.com, status.openai.com, status.anthropic.com, status.aws.amazon.com, status.npmjs.org, slack-status.com, status.datadoghq.com, netlifystatus.com, status.figma.com | Service status widget, for the services you track | A request for their public status feed. The app's server. |
npm (api.npmjs.org) | The demo board's KPI tile | A request for the weekly download count of @mlc-ai/web-llm. The app's server. |
| Endpoints you configure (KPI tile, Action button / Deck webhooks — e.g. Slack, Discord, Teams, IFTTT, Zapier, Telegram, Home Assistant —, calendar ICS links, custom sound, image or video URLs, custom news feeds) | When that widget refreshes or you press the button | Exactly what you configured. Calendars (ICS): the app's server — in the desktop app too — through its address guard: public addresses only, never your local network. KPI: the app's server on the web (public addresses only); the desktop app itself after a first-use confirmation (local-network endpoints allowed). Webhooks: your browser, or the desktop app after the same confirmation. Media and images: your browser. |
GitHub (api.github.com, avatars from avatars.githubusercontent.com) | Only once you add a token to a GitHub widget (GitHub Personal, Board, or GitHub CI connected in place) | Your API requests, authenticated with your token (a new token is first checked with one request for your login); the avatar images of pull-request authors. Your browser. |
Download server (downloads.optexia.com, hosted on Cloudflare R2) | Desktop app downloaded from a published release only: an update check a minute after start, then every 6 hours; a newer version is downloaded in the background and installed when you quit. Development and self-built copies never check. Turn it off by unticking Check for updates automatically in the tray menu (remembered on this computer), or with the environment variable INTERACT_UPDATES=off. | Requests for the update manifest and, when there is one, the update file — the download server (Cloudflare) sees your IP address, ordinary request headers and which version is requested. No account, no identifier. The desktop app itself. |
Asana (app.asana.com) | Only once you add a token to the Asana widget | Your API requests, with your token. Your browser. |
DiceBear (api.dicebear.com) | Only in the GitHub widgets' optional demo mode | Requests for placeholder avatars. Your browser. |
Hugging Face (huggingface.co/mlc-ai/… and its CDNs *.huggingface.co, *.hf.co) and GitHub (raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/…) | Only after you accept the in-browser AI download dialog | The one-time download of the model weights (about 950 MB or 1.8 GB, pinned revisions) and of its WebGPU library — they see your IP address then. Nothing about you or your prompts. Your browser. |
Hugging Face (huggingface.co/Xenova/… and the same CDNs *.huggingface.co, *.hf.co) | News ticker with News sentiment on (the default): once, when the first headlines arrive. Turn it off in the ticker settings and nothing is downloaded | The one-time download of the small headline sentiment model (Xenova/distiluse-base-multilingual-cased-v2, about 138 MB, a pinned revision), then kept in your browser's storage — Hugging Face sees your IP address then. The headlines are classified on your device and never sent anywhere; the model's runtime (WebAssembly) is served by the app itself. Your browser. |
Unsplash (images.unsplash.com) | Only if you pick one of the image background presets | The image request. Your browser. |
Ollama (127.0.0.1:11434) | Local AI, if Ollama runs on your machine | Your prompts — over loopback, they never leave the machine. |
Fonts, icons, sounds and the AI runtime are bundled with the app: no font or script CDN is contacted. The links widget shows local initials (no favicon service). The GitHub CI tile of the demo board shows built-in sample data and contacts nothing until you connect a token. This policy, the terms, the license and the third-party notices linked in Settings → About are pages of the app itself: opening them contacts no other server. The optional website link there and the “create a token” links open in your browser only when you click them. This list is checked against every address the app's code can contact. Each of these services has its own privacy policy.
What reaches us — and only if you do it
- Feedback. Settings → Give feedback prepares a short report (app version, browser and OS, language, the widget types of the current board — never their content, board names, links or tokens). Nothing is sent automatically: you send it yourself, by email or by pasting it wherever you like. If you email it to us, we receive your email address and what you wrote, use them only to answer and fix the problem, and delete them within 24 months.
- The beta form (this website): see The beta program and news below.
- Purchases (not open yet). Payment will be handled by TODO(founder): checkout provider / merchant of record, which receives the data needed for payment, tax and invoicing under its own policy. We receive your email address and order details to issue your license key and keep a ledger of issued keys (seat number, email, date), kept for as long as French accounting law requires (10 years).
Legal bases (GDPR): your request or our contract with you (feedback answers, license issuing), your consent (the beta form), our legal obligations (accounting records).
The beta program and news (this website)
The form at the bottom of the home page lets you ask for news by email, join the beta program, or both.
- What we collect: your email address and what you ticked (news, beta program); for the beta program, your platform (macOS, Windows or Linux) and, only if you fill them in, your role and what you would put on your second screen; the language of the page and the date and time of your sign-up.
- What for: news about Interact Savescreen if you asked for it (a few emails a year); for the beta program, sending you the beta builds for your platform, asking for your feedback and telling you about the beta. Nothing else: no advertising, no profiling, never sold or shared.
- Legal basis: your consent (Article 6(1)(a) GDPR), given by ticking the boxes and sending the form. You can withdraw it at any time, without affecting what was done before.
- Who processes it: Optexia, the controller. Brevo (Sendinblue SAS, France; data hosted in the European Union), our email provider, acting as our processor: it stores the contact list “Interact Savescreen — beta” and sends our emails, including the notification of your sign-up to [email protected]. Cloudflare, the host of this website (see This website), runs the small program that receives the form and passes it to Brevo; it keeps none of it beyond its technical logs.
- No email to the address you type: sending the form sends no confirmation to that address, so nobody can use this form to email someone else. If your address was added without your consent, use the unsubscribe link of our first email or write to us, and we delete it.
- How long: news — until you unsubscribe or ask us to delete your address, and at the latest 3 years after our last email to you; beta program — until the beta program ends, then deleted within 3 months unless you also asked for news; the notification of your sign-up in our mailbox — deleted within 24 months.
- Unsubscribing: every email we send through Brevo carries an unsubscribe link; you can also write to [email protected].
Hosted web versions
If you use a web version hosted by someone (a public demo, a “try it” link, a self-hosted copy), its host runs the app's server routes: it relays the feed, calendar and KPI requests listed above and, like any web server, may keep technical access logs (IP address, time, requested path). The app itself keeps client IP addresses only in memory, briefly (a one-minute sliding window), to rate-limit abuse — it never writes or logs them. Your boards still stay in your browser: a hosted version never receives them. TODO(founder): when the publisher hosts a version, name the hosting provider, its region and its log retention.
This website
This website (interact.optexia.com) uses no cookies, no analytics, no tracking pixels and no third-party scripts or fonts: its fonts are served by the site itself. If you switch between the light and dark theme, the choice is kept in your browser (local storage) and sent to no one.
It is hosted by Cloudflare (Cloudflare Pages; Cloudflare, Inc., United States, with servers worldwide), under its data processing terms (EU–US Data Privacy Framework and standard contractual clauses). Like any web host, Cloudflare processes your IP address and ordinary request headers to serve the pages and protect them from attacks, and keeps technical logs for a short time under its own policy. We do not use Cloudflare’s analytics on this site.
Your rights
Wherever the GDPR or a similar law applies, you can ask to access, correct, delete or export the personal data we hold about you (in practice: an email you sent us, a beta-form sign-up, a purchase record), object to its use, or withdraw your consent at any time. Write to [email protected]; we answer within one month. You can also complain to your data-protection authority (in France: the CNIL, cnil.fr).
Data held on your own device is yours to manage: we have no copy of it and cannot access, restore or delete it for you.
Children
The app is not directed at children under 15 and we do not knowingly collect their data.
Changes
If this policy changes, the new version will be published here with a new date, and any change in what the app sends to third parties will be listed in the release notes before it ships.