Add client code directly
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
import React from 'react';
|
||||
import Link from 'next/link';
|
||||
|
||||
export default function CookiesPage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-gray-50 flex flex-col font-sans">
|
||||
<nav className="bg-gray-900 border-b border-gray-800">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
||||
<div className="flex justify-between h-20 items-center">
|
||||
<Link href="/" className="flex items-center gap-3">
|
||||
<div className="w-10 h-10 bg-indigo-600 rounded-xl flex items-center justify-center">
|
||||
<span className="text-white font-black text-xl tracking-tighter">CQ</span>
|
||||
</div>
|
||||
<span className="font-extrabold text-2xl tracking-tight text-white">CK-QR</span>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<main className="flex-1 max-w-4xl mx-auto w-full px-6 py-16">
|
||||
<h1 className="text-5xl font-black text-gray-900 mb-6">Cookie Policy</h1>
|
||||
<p className="text-xl text-gray-500 mb-10">Last updated: August 2026</p>
|
||||
<div className="prose prose-lg prose-indigo max-w-none text-gray-700">
|
||||
<h2>How we use Cookies</h2>
|
||||
<p>
|
||||
We use strictly necessary cookies to keep you logged into the dashboard (`token`). We do not use third-party tracking cookies on our marketing site.
|
||||
</p>
|
||||
<h2>For end-users scanning codes</h2>
|
||||
<p>
|
||||
When a user scans a CK-QR code, the redirect engine does NOT drop any cookies onto the user's device. The redirect happens statelessly at the edge.
|
||||
</p>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
import React from 'react';
|
||||
import Link from 'next/link';
|
||||
|
||||
export default function PrivacyPage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-gray-50 flex flex-col font-sans">
|
||||
<nav className="bg-gray-900 border-b border-gray-800">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
||||
<div className="flex justify-between h-20 items-center">
|
||||
<Link href="/" className="flex items-center gap-3">
|
||||
<div className="w-10 h-10 bg-indigo-600 rounded-xl flex items-center justify-center">
|
||||
<span className="text-white font-black text-xl tracking-tighter">CQ</span>
|
||||
</div>
|
||||
<span className="font-extrabold text-2xl tracking-tight text-white">CK-QR</span>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<main className="flex-1 max-w-4xl mx-auto w-full px-6 py-16">
|
||||
<h1 className="text-5xl font-black text-gray-900 mb-6">Privacy Policy</h1>
|
||||
<p className="text-xl text-gray-500 mb-10">Last updated: August 2026</p>
|
||||
<div className="prose prose-lg prose-indigo max-w-none text-gray-700">
|
||||
<h2>1. Data Collection</h2>
|
||||
<p>
|
||||
When users scan your QR codes, we collect basic telemetry data including IP address (anonymized), user agent strings to determine device type, and the timestamp of the scan. We do not collect personally identifiable information (PII) from end-users scanning the codes.
|
||||
</p>
|
||||
<h2>2. Data Usage</h2>
|
||||
<p>
|
||||
This data is used strictly to populate your analytics dashboard. We do not sell this data to third parties or data brokers.
|
||||
</p>
|
||||
<h2>3. Account Deletion</h2>
|
||||
<p>
|
||||
You may request deletion of your CK-QR account at any time. Upon deletion, all associated dynamic QR codes will instantly break and route to a 404 page.
|
||||
</p>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
import React from 'react';
|
||||
import Link from 'next/link';
|
||||
|
||||
export default function TermsPage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-gray-50 flex flex-col font-sans">
|
||||
<nav className="bg-gray-900 border-b border-gray-800">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
||||
<div className="flex justify-between h-20 items-center">
|
||||
<Link href="/" className="flex items-center gap-3">
|
||||
<div className="w-10 h-10 bg-indigo-600 rounded-xl flex items-center justify-center">
|
||||
<span className="text-white font-black text-xl tracking-tighter">CQ</span>
|
||||
</div>
|
||||
<span className="font-extrabold text-2xl tracking-tight text-white">CK-QR</span>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<main className="flex-1 max-w-4xl mx-auto w-full px-6 py-16">
|
||||
<h1 className="text-5xl font-black text-gray-900 mb-6">Terms of Service</h1>
|
||||
<p className="text-xl text-gray-500 mb-10">Last updated: August 2026</p>
|
||||
<div className="prose prose-lg prose-indigo max-w-none text-gray-700">
|
||||
<h2>1. Acceptable Use</h2>
|
||||
<p>
|
||||
You agree not to use CK-QR's dynamic routing engine to redirect users to malicious websites, malware payloads, or phishing attacks. We actively monitor routing destinations using Google Safe Browsing and will instantly terminate accounts violating this policy.
|
||||
</p>
|
||||
<h2>2. Service Availability</h2>
|
||||
<p>
|
||||
While we strive for 99.9% uptime, we are not liable for business losses incurred due to temporary routing downtime or DNS propagation delays.
|
||||
</p>
|
||||
<h2>3. Subscription and Billing</h2>
|
||||
<p>
|
||||
Paid plans are billed monthly. You may cancel your subscription at any time, but we do not offer prorated refunds for mid-month cancellations.
|
||||
</p>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user