From 890a9fe0417b1e6ac3381cd36d696bab0403209e Mon Sep 17 00:00:00 2001 From: Tero Halla-aho Date: Mon, 24 Nov 2025 22:14:11 +0200 Subject: [PATCH] docs: add privacy page and footer version link --- app/globals.css | 25 +++++++++++++++++ app/layout.tsx | 12 ++++++++ app/privacy/page.tsx | 67 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 app/privacy/page.tsx diff --git a/app/globals.css b/app/globals.css index 59ad48b..2825333 100644 --- a/app/globals.css +++ b/app/globals.css @@ -255,6 +255,31 @@ p { font-size: 14px; } +.site-footer { + padding: 18px 20px 28px; + border-top: 1px solid rgba(148, 163, 184, 0.16); + margin-top: 32px; +} + +.footer-row { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + font-size: 13px; + color: var(--muted); +} + +.footer-text code { + font-size: 12px; +} + +.privacy-block ul { + margin: 8px 0 0; + padding-left: 18px; + color: #cbd5e1; +} + .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); diff --git a/app/layout.tsx b/app/layout.tsx index 8eb783a..a11f01d 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -13,12 +13,24 @@ export default function RootLayout({ }: { children: React.ReactNode; }) { + const version = process.env.NEXT_PUBLIC_VERSION || 'dev'; + return ( {children} + diff --git a/app/privacy/page.tsx b/app/privacy/page.tsx new file mode 100644 index 0000000..a52eb5b --- /dev/null +++ b/app/privacy/page.tsx @@ -0,0 +1,67 @@ +'use client'; + +import Link from 'next/link'; + +export default function PrivacyPage() { + return ( +
+
+ Home / Privacy & cookies +
+

Privacy & cookies

+

Updated: {new Date().toISOString().slice(0, 10)}

+ +
+

What data we collect

+
    +
  • Account data: email, password hash, name, phone (optional), role/status.
  • +
  • Listing data: location, contact details, amenities, photos, translations.
  • +
  • Operational logs: minimal request metadata for diagnostics.
  • +
+
+ +
+

How we use your data

+
    +
  • To authenticate users and manage sessions.
  • +
  • To publish and moderate listings.
  • +
  • To send transactional email (verification, password reset).
  • +
  • To comply with legal requests or protect the service.
  • +
+
+ +
+

Storage & retention

+
    +
  • Data is stored in our Postgres database hosted in the EU.
  • +
  • Backups are retained for disaster recovery; removed accounts/listings may persist in backups for a limited time.
  • +
+
+ +
+

Cookies

+
    +
  • We use essential cookies only: a session cookie for login/authentication.
  • +
  • No analytics, marketing, or tracking cookies are used.
  • +
+
+ +
+

Sharing

+
    +
  • We do not sell or share personal data with advertisers.
  • +
  • Data may be shared with service providers strictly for running the service (email delivery, hosting).
  • +
+
+ +
+

Your rights

+
    +
  • Request access, correction, or deletion of your data.
  • +
  • Withdraw consent for non-essential processing (we currently process only essentials).
  • +
  • Contact support for any privacy questions.
  • +
+
+
+ ); +}