Privacy

The full privacy policy is being finalised. In the meantime, here is a summary of how cookies are used on this site and how you can control them.

Cookie categories

  • Strictly necessary (always on): Required for the site to work — secure sign-in sessions and remembering your cookie choices. These are always on and cannot be switched off. e.g. Supabase authentication, consent preferences.
  • Security & anti-spam: Protects forms from abuse. reCAPTCHA loads when you interact with the contact form to verify you are human; you can opt out here, though submitting a form will still trigger the check. e.g. Google reCAPTCHA.
  • Analytics: Helps me understand which pages are useful so I can improve them. No analytics scripts load until you allow this. e.g. PostHog.
  • Functional: Remembers non-essential preferences, such as your day/night theme choice, between visits. e.g. Theme preference.

You can change which categories you allow at any time: .

Data controller: Angus Hally. Full policy text to follow (#126).

Privacy

The full privacy policy is being finalised. In the meantime, here is a summary of how cookies are used on this site and how you can control them.

Cookie categories

  • Strictly necessary (always on): Required for the site to work — secure sign-in sessions and remembering your cookie choices. These are always on and cannot be switched off. e.g. Supabase authentication, consent preferences.
  • Security & anti-spam: Protects forms from abuse. reCAPTCHA loads when you interact with the contact form to verify you are human; you can opt out here, though submitting a form will still trigger the check. e.g. Google reCAPTCHA.
  • Analytics: Helps me understand which pages are useful so I can improve them. No analytics scripts load until you allow this. e.g. PostHog.
  • Functional: Remembers non-essential preferences, such as your day/night theme choice, between visits. e.g. Theme preference.

You can change which categories you allow at any time: .

Data controller: Angus Hally. Full policy text to follow (#126).