Cookie Policy
Effective date: 15 March 2026
Last updated: 15 March 2026
This Cookie Policy explains how Jim, a free personal project by Ruben Swidzinski, uses cookies and similar technologies when you use the Jim progressive web application ("the App"). This policy should be read alongside the Privacy Policy.
1. What Are Cookies?
Cookies are small text files stored on your device when you visit a website or use a web application. They serve various purposes including remembering your preferences, maintaining your login session, and helping understand how you use the App.
2. Cookies I Use
2.1 Essential Cookies (Always Active)
These cookies are strictly necessary for the App to function. They cannot be disabled. Without them, the App would not work properly.
| Cookie | Purpose | Duration |
|---|---|---|
sb-*-auth-token | Authentication session token (Supabase/GoTrue JWT). Keeps you logged in securely. | 1 hour (refreshed automatically) |
jim-cookie-consent | Stores your cookie consent preferences. | 1 year |
2.2 Functional Cookies
These cookies enhance your experience by remembering your preferences. They are only set with your consent.
| Cookie / Storage | Purpose | Duration |
|---|---|---|
jim-onboarding-done | Remembers that you completed the welcome questionnaire (localStorage). | Persistent |
jim-theme | Stores your selected visual theme preference (localStorage). | Persistent |
jim-demo-mode | Enables demo/exploration mode without an account. | Session |
jim-install-dismissed | Remembers that you dismissed the PWA install prompt. | Persistent |
jim-update-* | Tracks app version for update prompts. | Persistent |
2.3 Analytics Cookies
Jim does not use any analytics or tracking cookies. There are no third-party analytics services. I do not track how you use the App beyond what is necessary for it to function.
3. Local Storage & Service Workers
In addition to cookies, the App uses browser local storage and service workers for offline functionality:
- Local Storage: Stores offline workout data, nutrition logs, and app state for sync when connectivity is restored.
- Service Worker Cache: Caches app assets (HTML, CSS, JS, images) for offline access. Does not store personal data.
- IndexedDB: May be used for storing larger datasets offline (workout history, exercise database cache).
4. Your Choices
4.1 Cookie Consent Banner
When you first visit the App, a cookie consent banner allows you to:
- Accept All: Enable all cookie categories.
- Essential Only: Allow only strictly necessary cookies.
- Customise: Choose which categories to enable.
4.2 Change Your Preferences
You can change your cookie preferences at any time by clicking the button below or visiting your Profile settings:
4.3 Browser Settings
You can also manage cookies through your browser settings. Note that disabling essential cookies will prevent the App from functioning correctly. Instructions for common browsers:
- Chrome: Settings > Privacy and Security > Cookies
- Firefox: Settings > Privacy & Security > Cookies
- Safari: Preferences > Privacy > Manage Website Data
- Edge: Settings > Cookies and Site Permissions
5. Third-Party Cookies
Jim does not set third-party cookies. All cookies are first-party (set by jim.relaycloud.org). Traffic passes through Cloudflare, which may set its own security cookies — these are classified as essential.
6. Changes to This Policy
I may update this Cookie Policy periodically. If I introduce new cookie categories or change how cookies are used, I will update this page and request your consent again where required.
7. Contact
For questions about cookies, contact me at [email protected].