diff --git a/app/about/page.tsx b/app/about/page.tsx new file mode 100644 index 0000000..bd48ab5 --- /dev/null +++ b/app/about/page.tsx @@ -0,0 +1,38 @@ +export default function AboutPage() { + return ( +
+

+ About Ciphera Analytics +

+ +
+

+ Ciphera Analytics is a privacy-first web analytics platform that provides simple, + intuitive insights without compromising your visitors' privacy. +

+ +

+ Privacy-First Design +

+

+ We believe in privacy by design. Our analytics platform: +

+ + +

+ Simple & Lightweight +

+

+ Our tracking script is lightweight and won't slow down your website. + Get the insights you need without the bloat. +

+
+
+ ) +} diff --git a/app/faq/page.tsx b/app/faq/page.tsx new file mode 100644 index 0000000..ce63261 --- /dev/null +++ b/app/faq/page.tsx @@ -0,0 +1,49 @@ +export default function FAQPage() { + const faqs = [ + { + question: "Is Ciphera Analytics GDPR compliant?", + answer: "Yes, Ciphera Analytics is GDPR compliant by design. We don't use cookies, don't collect personal data, and process all data anonymously." + }, + { + question: "Do I need a cookie consent banner?", + answer: "No, you don't need a cookie consent banner. Ciphera Analytics doesn't use cookies, so it's exempt from cookie consent requirements under GDPR." + }, + { + question: "How does Ciphera Analytics track visitors?", + answer: "We use a lightweight JavaScript snippet that sends anonymous pageview events. No cookies, no persistent identifiers, and no cross-site tracking." + }, + { + question: "What data does Ciphera Analytics collect?", + answer: "We collect anonymous pageview data including page path, referrer, device type, browser, and country (from IP, not stored). No personal information is collected." + }, + { + question: "How accurate is the data?", + answer: "Our data is highly accurate. We exclude bot traffic and data center visits. Since we don't use cookies, we count unique sessions rather than unique users." + }, + { + question: "Can I export my data?", + answer: "Yes, you can access all your analytics data through the dashboard. We're working on export functionality for bulk data downloads." + } + ] + + return ( +
+

+ Frequently Asked Questions +

+ +
+ {faqs.map((faq, index) => ( +
+

+ {faq.question} +

+

+ {faq.answer} +

+
+ ))} +
+
+ ) +} diff --git a/app/security/page.tsx b/app/security/page.tsx new file mode 100644 index 0000000..5bf1148 --- /dev/null +++ b/app/security/page.tsx @@ -0,0 +1,59 @@ +export default function SecurityPage() { + return ( +
+

+ Security & Privacy +

+ +
+

+ Data Protection +

+

+ Ciphera Analytics is built with security and privacy as core principles: +

+ + +

+ Compliance +

+

+ Ciphera Analytics is compliant with: +

+ + +

+ Infrastructure Security +

+

+ Our infrastructure follows security best practices: +

+ + +

+ Your Data, Your Control +

+

+ You have full control over your analytics data. You can delete sites and all + associated data at any time. We never share your data with third parties. +

+
+
+ ) +} diff --git a/lib/api/client.ts b/lib/api/client.ts index 1c8c332..e63bc68 100644 --- a/lib/api/client.ts +++ b/lib/api/client.ts @@ -5,7 +5,7 @@ export const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8082' export const AUTH_URL = process.env.NEXT_PUBLIC_AUTH_URL || 'http://localhost:3000' export const APP_URL = process.env.NEXT_PUBLIC_APP_URL || 'http://localhost:3003' -export const AUTH_API_URL = process.env.NEXT_PUBLIC_AUTH_API_URL || 'http://localhost:8081' +export const AUTH_API_URL = process.env.NEXT_PUBLIC_AUTH_API_URL || 'https://auth-api.ciphera.net' export function getLoginUrl(redirectPath = '/auth/callback') { const redirectUri = encodeURIComponent(`${APP_URL}${redirectPath}`) diff --git a/next.config.ts b/next.config.ts index 772c44c..48c76ec 100644 --- a/next.config.ts +++ b/next.config.ts @@ -9,6 +9,11 @@ const nextConfig: NextConfig = { async redirects() { const authUrl = process.env.NEXT_PUBLIC_AUTH_URL || 'https://auth.ciphera.net' return [ + { + source: '/dashboard', + destination: '/', + permanent: false, + }, { source: '/login', destination: `${authUrl}/login?client_id=analytics-app&redirect_uri=${encodeURIComponent((process.env.NEXT_PUBLIC_APP_URL || 'http://localhost:3003') + '/auth/callback')}&response_type=code`, diff --git a/public/ciphera_icon_no_margins.png b/public/ciphera_icon_no_margins.png new file mode 100644 index 0000000..d20ac35 Binary files /dev/null and b/public/ciphera_icon_no_margins.png differ