diff options
| author | Dawid Rycerz <dawid@rycerz.xyz> | 2025-07-03 20:28:45 +0300 |
|---|---|---|
| committer | Dawid Rycerz <dawid@rycerz.xyz> | 2025-07-03 20:28:45 +0300 |
| commit | 17221b57f9345575add173be49efb4587fc3c828 (patch) | |
| tree | 55a025afb6a41a5816a3dc1a7134fa36ab4f4304 | |
| parent | b97b4a0505a30989de76073e5443c4916ded1613 (diff) | |
Add privacy policy
| -rw-r--r-- | src/components/layout/Header.astro | 22 | ||||
| -rw-r--r-- | src/pages/privacy-policy.astro | 89 | ||||
| -rw-r--r-- | src/site.config.ts | 4 |
3 files changed, 105 insertions, 10 deletions
diff --git a/src/components/layout/Header.astro b/src/components/layout/Header.astro index 0b03986..3eff4e0 100644 --- a/src/components/layout/Header.astro +++ b/src/components/layout/Header.astro @@ -126,16 +126,18 @@ import { siteConfig } from "../../site.config"; id="navigation-menu" > { - menuLinks.map((link) => ( - <a - aria-current={Astro.url.pathname === link.path ? "page" : false} - class="px-4 py-4 underline-offset-2 hover:underline sm:py-0" - data-astro-prefetch - href={link.path} - > - {link.title} - </a> - )) + menuLinks + .filter((link) => link.path !== "/privacy-policy/") + .map((link) => ( + <a + aria-current={Astro.url.pathname === link.path ? "page" : false} + class="px-4 py-4 underline-offset-2 hover:underline sm:py-0" + data-astro-prefetch + href={link.path} + > + {link.title} + </a> + )) } </nav> </div> diff --git a/src/pages/privacy-policy.astro b/src/pages/privacy-policy.astro new file mode 100644 index 0000000..262e67d --- /dev/null +++ b/src/pages/privacy-policy.astro @@ -0,0 +1,89 @@ +--- +import PageLayout from "@/layouts/Base.astro"; + +const meta = { + description: + "Privacy policy and GDPR compliance information for rycerz.xyz. Learn about our data processing practices and commitment to user privacy.", + title: "Privacy Policy", +}; +--- + +<PageLayout meta={meta}> + <h1 class="title mb-6">Data Processing & GDPR Compliance</h1> + <div class="prose prose-sm prose-cactus max-w-none"> + <h2>Data Controller</h2> + <p> + The data controller for this website (<strong>rycerz.xyz</strong>) is the site owner. No + personally identifiable information (PII) is collected or processed on this site. + </p> + + <h2>What Data Is Collected?</h2> + <p> + We do <strong>not</strong> collect any personal data.<br /> + We do <strong>not</strong> use cookies.<br /> + We do <strong>not</strong> track users across sites. + </p> + + <h2>Analytics</h2> + <p> + This website uses <a href="https://plausible.io/" target="_blank" rel="noopener noreferrer" + >Plausible Analytics</a + > – a lightweight, privacy-friendly analytics tool that is fully compliant with the General Data + Protection Regulation (GDPR). + </p> + <p> + Plausible collects only <strong>aggregated, anonymous</strong> data for statistical purposes, such + as: + </p> + <ul class="list-inside list-disc" role="list"> + <li>Page views and visit counts</li> + <li>Referrer sources (e.g. search engines, external links)</li> + <li>Device type, browser, and operating system</li> + <li>Country (at a general level – no precise geolocation)</li> + </ul> + <p> + Plausible does <strong>not</strong> use cookies, does <strong>not</strong> collect personal data, + and does <strong>not</strong> track individual visitors. + </p> + <p> + You can view the public analytics dashboard here:<br /> + 👉 <a + href="https://analytics.craftknight.com/rycerz.xyz" + target="_blank" + rel="noopener noreferrer">https://analytics.craftknight.com/rycerz.xyz</a + > + </p> + <p> + Full details: <a + href="https://plausible.io/data-policy" + target="_blank" + rel="noopener noreferrer">https://plausible.io/data-policy</a + > + </p> + + <h2>Hosting</h2> + <p> + This website is hosted on <strong>Cloudflare Pages</strong>, a secure and GDPR-compliant + platform. While Cloudflare may temporarily process technical data (such as IP addresses) to + deliver and protect the website, no tracking or profiling of visitors takes place by default. + </p> + <p> + Cloudflare's privacy policy is available here:<br /> + <a href="https://www.cloudflare.com/privacypolicy/" target="_blank" rel="noopener noreferrer" + >https://www.cloudflare.com/privacypolicy/</a + > + </p> + + <h2>Your Rights Under GDPR</h2> + <p> + Since no personal data is collected or stored on this site, the rights granted under the GDPR + (e.g. right of access, rectification, erasure, or data portability) do <strong + >not apply</strong + > in this context. + </p> + <p> + If you have any questions regarding data processing or privacy, feel free to reach out via the + contact information available on the site. + </p> + </div> +</PageLayout> diff --git a/src/site.config.ts b/src/site.config.ts index a09953d..8c13238 100644 --- a/src/site.config.ts +++ b/src/site.config.ts @@ -49,6 +49,10 @@ export const menuLinks: { path: string; title: string }[] = [ path: "/micro/", title: "Micro", }, + { + path: "/privacy-policy/", + title: "Privacy", + }, ]; // https://expressive-code.com/reference/configuration/ |
