diff --git a/src/app/cookies/page.tsx b/src/app/cookies/page.tsx new file mode 100644 index 00000000..8e062bef --- /dev/null +++ b/src/app/cookies/page.tsx @@ -0,0 +1,224 @@ +export default function CookiesPage() { + const lastUpdated = new Date().toLocaleDateString(); + + return ( +
+
+ {/* Title */} +

Cookies Policy

+ +

+ Last updated: {lastUpdated} +

+ + {/* Intro */} +
+

+ This Cookies Policy explains how cookies and similar tracking + technologies are used on this website and related services operated + by {`{Your Brand Name}`}. It explains what cookies are, how + we use them, and how you can control them. +

+ + {/* 1 */} +
+

1. What are cookies?

+

+ Cookies are small text files stored on your device (computer, + tablet, or mobile) when you visit a website. They are widely used + to make websites work efficiently and provide reporting + information. +

+
+ + {/* 2 */} +
+

+ 2. Types of cookies we use +

+ +

+ We use different types of cookies for various purposes: +

+ +
    +
  • + Essential Cookies: Required for core functionality such + as authentication, security, and basic navigation. +
  • + +
  • + Performance & Analytics Cookies: Help us understand how + users interact with the site (e.g., page views, traffic sources, + user behavior). +
  • + +
  • + Functional Cookies: Remember your preferences such as + theme, language, or region settings. +
  • + +
  • + Security Cookies: Used to detect fraud, abuse, and + unauthorized access. +
  • + +
  • + Advertising Cookies (if enabled): Used to deliver + relevant ads and measure campaign performance. +
  • +
+
+ + {/* 3 */} +
+

+ 3. How we use cookies +

+

We use cookies to:

+ +
    +
  • Ensure the website functions correctly
  • +
  • Improve performance and user experience
  • +
  • Remember user preferences and settings
  • +
  • Analyze traffic and usage patterns
  • +
  • Improve content, features, and services
  • +
  • Enhance security and prevent abuse
  • +
+
+ + {/* 4 */} +
+

+ 4. Third-party cookies +

+

+ Some cookies may be placed by third-party services that appear on + our pages. These include tools such as: +

+ +
    +
  • + Analytics providers (e.g., Google Analytics or alternatives) +
  • +
  • Authentication or login providers
  • +
  • Embedded content providers (e.g., videos, maps, widgets)
  • +
  • Performance monitoring tools
  • +
+ +

+ These third parties may collect data in accordance with their own + privacy policies. +

+
+ + {/* 5 */} +
+

+ 5. Why cookies are important +

+

+ Cookies help us provide a smoother and more personalized + experience. Without cookies, some features may not work properly, + and you may need to re-enter information repeatedly. +

+
+ + {/* 6 */} +
+

+ 6. How you can control cookies +

+ +

+ You have full control over cookies and can manage them in several + ways: +

+ +
    +
  • Adjust browser settings to block or delete cookies
  • +
  • Set preferences to accept or reject certain cookies
  • +
  • Use “Do Not Track” options if supported by your browser
  • +
+ +

+ Please note that disabling cookies may affect website + functionality. +

+
+ + {/* 7 */} +
+

7. Cookie retention

+

+ Cookies may be stored either temporarily (session cookies) or for + longer periods (persistent cookies). Session cookies are deleted + when you close your browser, while persistent cookies remain until + they expire or are deleted manually. +

+
+ + {/* 8 */} +
+

+ 8. Data collected through cookies +

+

Cookies may collect information such as:

+ +
    +
  • + IP address (anonymized or partial depending on configuration) +
  • +
  • Browser type and device information
  • +
  • Pages visited and time spent on site
  • +
  • Interaction patterns (clicks, navigation flow)
  • +
  • Login/session status (if applicable)
  • +
+
+ + {/* 9 */} +
+

+ 9. Legal basis for cookies +

+

Where applicable, we use cookies based on:

+ +
    +
  • Your consent (for non-essential cookies)
  • +
  • + Legitimate interest (for essential functionality and security) +
  • +
  • Contractual necessity (for logged-in services)
  • +
+
+ + {/* 10 */} +
+

+ 10. Updates to this policy +

+

+ We may update this Cookies Policy from time to time to reflect + changes in technology, legal requirements, or our services. + Updates will be posted on this page with a revised “Last Updated” + date. +

+
+ + {/* 11 */} +
+

11. Contact us

+

+ If you have any questions about this Cookies Policy, you can + contact us at: +

+ +

+ support@yourdomain.com (replace with your real email) +

+
+
+
+
+ ); +} diff --git a/src/app/page.tsx b/src/app/page.tsx index 16e9fac2..4c5bfb05 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -5,6 +5,7 @@ import { FloatingParticles } from '@/components/FloatingParticles'; import dynamic from 'next/dynamic'; import BackToTop from '@/components/BackToTop'; import ErrorBoundary from '@/components/ErrorBoundary'; +import CookieConsent from '@/components/CookieConsent'; const Sponsors = dynamic(() => import('@/components/home/Sponsors')); const Mission = dynamic(() => import('@/components/home/Mission')); @@ -20,21 +21,29 @@ export default function Home() { + + + + + + + {/* COOKIE CONSENT GLOBAL POPUP */} + ); diff --git a/src/components/CookieConsent.jsx b/src/components/CookieConsent.jsx new file mode 100644 index 00000000..95dd8840 --- /dev/null +++ b/src/components/CookieConsent.jsx @@ -0,0 +1,62 @@ +'use client'; + +import { useEffect, useState } from 'react'; + +const COOKIE_KEY = 'cookie_consent'; + +export default function CookieConsent() { + const [visible, setVisible] = useState(false); + + useEffect(() => { + const saved = localStorage.getItem(COOKIE_KEY); + + if (!saved) { + setVisible(true); + } + }, []); + + const handleAccept = () => { + localStorage.setItem(COOKIE_KEY, 'accepted'); + setVisible(false); + }; + + const handleReject = () => { + localStorage.setItem(COOKIE_KEY, 'rejected'); + setVisible(false); + }; + + if (!visible) return null; + + return ( +
+
+

We use cookies

+ +

+ We use cookies to improve your experience, analyze traffic, and + personalize content. You can accept or reject non-essential cookies. +

+ +
+ + + +
+ +

+ You can change your preferences anytime in Cookies Policy. +

+
+
+ ); +} diff --git a/src/components/layout/Footer.tsx b/src/components/layout/Footer.tsx index 261969d9..9970e69f 100644 --- a/src/components/layout/Footer.tsx +++ b/src/components/layout/Footer.tsx @@ -52,7 +52,7 @@ export default function Footer() {
- Wiki & Docs + Wiki & Docs Feature Flags @@ -102,6 +102,11 @@ export default function Footer() { Privacy Policy + + {/* Cookies Policy */} + + Cookies Policy +