feat: add policy pages
This commit is contained in:
@@ -0,0 +1,274 @@
|
||||
import type { Metadata } from "next";
|
||||
import Link from "next/link";
|
||||
import { PageHeader } from "@/components/page-header";
|
||||
import { buildOgMeta } from "@/lib/og";
|
||||
|
||||
const EFFECTIVE_DATE = "June 1, 2026";
|
||||
const CONTACT_EMAIL = "support@prabhupadasays.org";
|
||||
const OPERATOR = "Krispire Solutions LLP";
|
||||
const SERVICE = "Prabhupāda Says";
|
||||
const SLA_DAYS = 30;
|
||||
|
||||
export function generateMetadata(): Metadata {
|
||||
return buildOgMeta({
|
||||
title: "Data Deletion — Prabhupāda Says",
|
||||
quote: "How to delete your account and personal data from Prabhupāda Says.",
|
||||
});
|
||||
}
|
||||
|
||||
export default function DataDeletionPage() {
|
||||
const subject = "Delete my account";
|
||||
const body = `Hello,\n\nI would like to delete my Prabhupāda Says account and all associated personal data.\n\n— Email address registered with the account: \n— Account handle (if known): \n— Reason for deletion (optional): \n\nThank you.`;
|
||||
const mailto = `mailto:${CONTACT_EMAIL}?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`;
|
||||
|
||||
return (
|
||||
<div className="min-h-screen bg-background">
|
||||
<PageHeader>
|
||||
<Link
|
||||
href="/"
|
||||
className="text-sm text-muted-foreground hover:text-foreground transition-colors"
|
||||
>
|
||||
← Home
|
||||
</Link>
|
||||
<h1 className="mt-3 text-3xl font-bold text-foreground">
|
||||
Data Deletion
|
||||
</h1>
|
||||
<p className="mt-1 text-muted-foreground">Effective {EFFECTIVE_DATE}</p>
|
||||
</PageHeader>
|
||||
|
||||
<main className="max-w-3xl mx-auto px-6 py-10 space-y-10 text-[15px] leading-relaxed text-muted-foreground">
|
||||
<section className="space-y-3">
|
||||
<p>
|
||||
You can delete your {SERVICE} account and the personal data
|
||||
associated with it at any time. This page explains exactly how to
|
||||
request deletion, what we delete, what we keep, and how long the
|
||||
process takes.
|
||||
</p>
|
||||
<p>
|
||||
Self-service deletion from within your profile settings is planned
|
||||
and will be added in a future release. Until then, please use the
|
||||
email process below — we will process every valid request
|
||||
within {SLA_DAYS} days.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<Section title="How to request deletion">
|
||||
<ol className="list-decimal pl-6 space-y-3">
|
||||
<li>
|
||||
<p>
|
||||
Send an email from the email address registered with your
|
||||
account to{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
<p>
|
||||
Sending from your registered email helps us verify the request
|
||||
is genuinely yours. If you signed up through Google or Facebook,
|
||||
send the email from the address linked to that provider.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
Use the subject line:{" "}
|
||||
<code className="px-1 py-0.5 rounded bg-muted text-foreground font-mono text-xs">
|
||||
Delete my account
|
||||
</code>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>In the body of the email, include:</p>
|
||||
<ul className="mt-2 list-disc pl-6 space-y-1.5">
|
||||
<li>The email address registered with your account.</li>
|
||||
<li>Your account handle, if you remember it.</li>
|
||||
<li>
|
||||
(Optional) The reason for deletion — this helps us
|
||||
improve the Service, but you do not need to share it.
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
We will reply to confirm we have received your request,
|
||||
typically within 2 business days, and again once the deletion is
|
||||
complete.
|
||||
</p>
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
<div className="mt-6 rounded-lg border border-border bg-card p-4 sm:p-5">
|
||||
<p className="text-sm text-foreground">
|
||||
Prefer to skip the typing? Click the button below to open a
|
||||
pre-filled email in your mail client.
|
||||
</p>
|
||||
<a
|
||||
href={mailto}
|
||||
className="mt-4 inline-flex items-center justify-center h-10 rounded-md bg-primary px-5 text-sm font-medium text-primary-foreground hover:bg-primary/90 transition-colors"
|
||||
>
|
||||
Open pre-filled email
|
||||
</a>
|
||||
</div>
|
||||
</Section>
|
||||
|
||||
<Section title="What we delete">
|
||||
<p>
|
||||
Once we verify your request, we permanently delete the following
|
||||
within {SLA_DAYS} days:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
Your user account (email address, name, handle, password hash,
|
||||
avatar URL, role, reading preferences, and account timestamps).
|
||||
</li>
|
||||
<li>
|
||||
Any linked third-party sign-in identities (Google, Facebook). The
|
||||
provider is the source of truth for your account with them; you
|
||||
can revoke that link from the provider as well.
|
||||
</li>
|
||||
<li>Your avatar image stored in our object storage.</li>
|
||||
<li>Your posts, bookmarks, collections, and short share links.</li>
|
||||
<li>
|
||||
Any outstanding password-reset or email-verification tokens.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
Records linked to your user identifier via foreign keys are removed
|
||||
via cascade or set to a deleted-user placeholder at the same time.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="What we may retain (and why)">
|
||||
<p>
|
||||
A small amount of information may be retained after account
|
||||
deletion, in line with the law and the legitimate operation of the
|
||||
Service:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Feedback messages</strong> you
|
||||
submitted are retained after deletion, but the link to your user
|
||||
identifier is removed (so the message remains as anonymous product
|
||||
feedback).
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">
|
||||
Server and security logs
|
||||
</strong>{" "}
|
||||
may contain references to your activity for a short operational
|
||||
window (typically 30 days) before they are deleted or anonymised.
|
||||
These logs are not used to reconstruct your account.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">
|
||||
Records we are legally required to retain
|
||||
</strong>{" "}
|
||||
— for example, in connection with a pending legal claim,
|
||||
regulatory request, or tax/accounting requirement — will be
|
||||
kept only for as long as the law requires and then deleted.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Backups</strong> taken before
|
||||
your deletion request are encrypted and rotate out on a regular
|
||||
schedule. Your data will be overwritten as backups roll, typically
|
||||
within 30 days.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="Timeline">
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">
|
||||
Within 2 business days
|
||||
</strong>{" "}
|
||||
— we acknowledge your request.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">
|
||||
Within {SLA_DAYS} days
|
||||
</strong>{" "}
|
||||
— we complete the deletion in our active systems and send
|
||||
you a confirmation email.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Up to 30 days after</strong>{" "}
|
||||
— residual copies in encrypted backups roll out as part of
|
||||
our normal backup retention schedule.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="If you signed in via Google or Facebook">
|
||||
<p>
|
||||
Deleting your {SERVICE} account does not automatically remove your
|
||||
account with Google or Facebook. To remove your data entirely from
|
||||
those providers, also revoke the “Prabhupāda Says” app
|
||||
connection in your provider settings:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Google:</strong> visit your
|
||||
Google Account → <em>Security</em> →{" "}
|
||||
<em>Third-party apps with account access</em> → select
|
||||
“Prabhupāda Says” → <em>Remove access</em>.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Facebook:</strong> visit{" "}
|
||||
<em>Settings & privacy</em> → <em>Settings</em> →{" "}
|
||||
<em>Apps and websites</em> → select “Prabhupāda
|
||||
Says” → <em>Remove</em>.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="Other rights">
|
||||
<p>
|
||||
Besides deletion, you can also ask us to provide a copy of the
|
||||
personal information we hold about you, or to correct information
|
||||
that is inaccurate. See our{" "}
|
||||
<Link
|
||||
href="/privacy"
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
Privacy Policy
|
||||
</Link>{" "}
|
||||
for the full list of rights available to you.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="Need help?">
|
||||
<p>
|
||||
If you have any trouble with the deletion process or want to verify
|
||||
the status of a previous request, write to{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
. The Service is operated by {OPERATOR}.
|
||||
</p>
|
||||
</Section>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function Section({
|
||||
title,
|
||||
children,
|
||||
}: {
|
||||
title: string;
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<section className="space-y-3">
|
||||
<h2 className="text-xl font-bold text-foreground">{title}</h2>
|
||||
{children}
|
||||
</section>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
import { SiteHeader } from "@/components/site-header";
|
||||
|
||||
/**
|
||||
* Minimal layout for legal / informational pages (Privacy Policy, Terms of
|
||||
* Use, Data Deletion). Just the global SiteHeader and the content — no
|
||||
* sidebar, no bottom nav, no in-page reading affordances. Keeps these
|
||||
* pages focused on the text they exist to deliver.
|
||||
*/
|
||||
export default function LegalLayout({
|
||||
children,
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<div className="flex-1 flex flex-col">
|
||||
<SiteHeader />
|
||||
{children}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,405 @@
|
||||
import type { Metadata } from "next";
|
||||
import Link from "next/link";
|
||||
import { PageHeader } from "@/components/page-header";
|
||||
import { buildOgMeta } from "@/lib/og";
|
||||
|
||||
const EFFECTIVE_DATE = "June 1, 2026";
|
||||
const CONTACT_EMAIL = "support@prabhupadasays.org";
|
||||
const OPERATOR = "Krispire Solutions LLP";
|
||||
const SERVICE = "Prabhupāda Says";
|
||||
|
||||
export function generateMetadata(): Metadata {
|
||||
return buildOgMeta({
|
||||
title: "Privacy Policy — Prabhupāda Says",
|
||||
quote:
|
||||
"How we collect, use, and protect your information when you use Prabhupāda Says.",
|
||||
});
|
||||
}
|
||||
|
||||
export default function PrivacyPolicyPage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-background">
|
||||
<PageHeader>
|
||||
<Link
|
||||
href="/"
|
||||
className="text-sm text-muted-foreground hover:text-foreground transition-colors"
|
||||
>
|
||||
← Home
|
||||
</Link>
|
||||
<h1 className="mt-3 text-3xl font-bold text-foreground">
|
||||
Privacy Policy
|
||||
</h1>
|
||||
<p className="mt-1 text-muted-foreground">
|
||||
Effective {EFFECTIVE_DATE}
|
||||
</p>
|
||||
</PageHeader>
|
||||
|
||||
<main className="max-w-3xl mx-auto px-6 py-10 space-y-10 text-[15px] leading-relaxed text-muted-foreground">
|
||||
<section className="space-y-3">
|
||||
<p>
|
||||
This Privacy Policy explains how {OPERATOR} (“we”,
|
||||
“us”, “our”) collects, uses, stores, and
|
||||
shares your personal information when you use {SERVICE}{" "}
|
||||
(the “Service”) available at prabhupadasays.org. By using
|
||||
the Service you agree to the practices described below.
|
||||
</p>
|
||||
<p>
|
||||
We are committed to handling your information lawfully, fairly, and
|
||||
transparently in accordance with India’s Digital Personal Data
|
||||
Protection Act, 2023 (DPDP Act).
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<Section title="1. Who we are">
|
||||
<p>
|
||||
The Service is developed and owned by {OPERATOR}, a limited
|
||||
liability partnership registered in India. For any questions about
|
||||
this Policy or your personal data, contact us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="2. Information we collect">
|
||||
<p>We collect only the information needed to operate the Service:</p>
|
||||
|
||||
<h3 className="mt-4 text-base font-semibold text-foreground">
|
||||
(a) Information you give us
|
||||
</h3>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Account details</strong> when
|
||||
you sign up by email: your name, email address, password (stored
|
||||
only as a one-way bcrypt hash — we never see or store your
|
||||
plain password), and a public handle.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Profile information</strong>{" "}
|
||||
that you choose to add: display name, handle, and an optional
|
||||
avatar image you upload.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">User content</strong> you
|
||||
create within the Service, such as posts (selected quotes you
|
||||
choose to share publicly), bookmarks (private), collections
|
||||
(private or public), and short share links.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Reading preferences</strong>{" "}
|
||||
such as your chosen font, theme, and palette, so the reading
|
||||
experience follows you across devices.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Feedback messages</strong>{" "}
|
||||
you submit through the feedback form, including any contact
|
||||
email you provide.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="mt-4 text-base font-semibold text-foreground">
|
||||
(b) Information from third-party sign-in
|
||||
</h3>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
If you choose “Login with Google” or
|
||||
“Login with Facebook”, we receive a stable
|
||||
provider user identifier, your email, your name, and your
|
||||
profile picture URL from that provider. We use this information
|
||||
solely to create or sign you in to your account.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="mt-4 text-base font-semibold text-foreground">
|
||||
(c) Information collected automatically
|
||||
</h3>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Session cookies.</strong> We
|
||||
set an httpOnly, secure session cookie (
|
||||
<code className="font-mono text-xs">spsays_auth</code>) after
|
||||
you sign in, so you stay signed in across page loads. During
|
||||
third-party sign-in we briefly set a second cookie (
|
||||
<code className="font-mono text-xs">spsays_oauth_state</code>)
|
||||
to protect against cross-site request forgery; it is deleted at
|
||||
the end of the sign-in handshake.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Share link analytics.</strong>{" "}
|
||||
When someone clicks a short share link, we log the timestamp
|
||||
and whether the request came from a known social-media link
|
||||
preview bot. We do not log IP addresses or build user profiles
|
||||
from this data.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Standard server logs.</strong>{" "}
|
||||
Our servers retain short-lived logs containing request paths,
|
||||
status codes, and timing for security and reliability. These
|
||||
logs are not used for advertising or profiling.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="3. How we use your information">
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>To create and operate your account, and authenticate you.</li>
|
||||
<li>
|
||||
To deliver the features you request — bookmarks,
|
||||
collections, posts, share links, search, and reading
|
||||
preferences.
|
||||
</li>
|
||||
<li>
|
||||
To send transactional emails: email verification, password
|
||||
reset, and notifications you have opted into.
|
||||
</li>
|
||||
<li>
|
||||
To respond to your feedback, questions, and support requests.
|
||||
</li>
|
||||
<li>
|
||||
To protect the Service against abuse, fraud, and security
|
||||
incidents.
|
||||
</li>
|
||||
<li>
|
||||
To comply with applicable laws, court orders, and lawful
|
||||
requests by public authorities.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
We do not sell your personal information, and we do not use it for
|
||||
advertising or to build profiles about you for third parties.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="4. Legal bases">
|
||||
<p>
|
||||
Where the DPDP Act or other applicable law requires a legal basis,
|
||||
we rely on the following:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
Your <strong className="text-foreground">consent</strong>, given
|
||||
when you sign up or submit information voluntarily.
|
||||
</li>
|
||||
<li>
|
||||
The <strong className="text-foreground">performance of our
|
||||
service</strong> to you (for example, processing your account
|
||||
so you can sign in).
|
||||
</li>
|
||||
<li>
|
||||
Our <strong className="text-foreground">legitimate
|
||||
interests</strong> in keeping the Service secure, preventing
|
||||
abuse, and improving reliability.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Legal obligations</strong>{" "}
|
||||
we are required to meet.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="5. Sharing your information">
|
||||
<p>
|
||||
We share your information only with the service providers we need
|
||||
to run {SERVICE}. Each provider is bound by contractual or
|
||||
statutory confidentiality obligations and processes data only on
|
||||
our instructions.
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Google LLC</strong> —
|
||||
when you use “Continue with Google”, Google
|
||||
authenticates you and shares your profile basics with us.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Meta Platforms, Inc.</strong>{" "}
|
||||
— when you use “Continue with Facebook”,
|
||||
Facebook authenticates you and shares your profile basics with
|
||||
us.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Cloudflare, Inc.</strong>{" "}
|
||||
— we store avatar images you upload in Cloudflare R2
|
||||
object storage.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">MongoDB, Inc. and
|
||||
hosting/infrastructure providers</strong> — we store
|
||||
account data and content in managed Postgres, MongoDB, and
|
||||
DragonflyDB instances.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Typesense, Inc.</strong>{" "}
|
||||
— we use a Typesense search index to power on-site search
|
||||
for public content.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Our email delivery
|
||||
provider</strong> — we send transactional emails (account
|
||||
verification, password reset, feedback notifications) via an
|
||||
SMTP relay.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
We may also disclose information when required by law, by valid
|
||||
legal process, or to protect the rights, property, or safety of
|
||||
our users, the public, or {OPERATOR}.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="6. International transfers">
|
||||
<p>
|
||||
Some of the providers listed above operate servers outside India.
|
||||
Where data is transferred internationally, we rely on the
|
||||
provider’s standard contractual safeguards and security
|
||||
controls, in line with the DPDP Act and applicable cross-border
|
||||
transfer rules.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="7. How long we keep your information">
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
<strong className="text-foreground">Account data</strong> is
|
||||
kept for as long as your account is active.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">User content</strong>{" "}
|
||||
(posts, bookmarks, collections, profile) is kept until you
|
||||
delete it or delete your account.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Password-reset and
|
||||
email-verification tokens</strong> expire within 1 hour and 24
|
||||
hours respectively, and are deleted shortly after.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Server and click logs</strong>{" "}
|
||||
are retained for a short operational window (typically 30 days
|
||||
or less) and then deleted or anonymised.
|
||||
</li>
|
||||
<li>
|
||||
<strong className="text-foreground">Feedback messages</strong>{" "}
|
||||
may be retained after your account is deleted, with your user
|
||||
identifier removed, so we can act on the product feedback you
|
||||
shared.
|
||||
</li>
|
||||
</ul>
|
||||
</Section>
|
||||
|
||||
<Section title="8. Your rights">
|
||||
<p>
|
||||
Subject to the DPDP Act and other applicable laws, you have the
|
||||
right to:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>Access the personal information we hold about you.</li>
|
||||
<li>Correct information that is inaccurate or out of date.</li>
|
||||
<li>
|
||||
Request deletion of your account and personal information (see{" "}
|
||||
<Link
|
||||
href="/data-deletion"
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
Data Deletion
|
||||
</Link>
|
||||
).
|
||||
</li>
|
||||
<li>Withdraw any consent you previously gave us.</li>
|
||||
<li>
|
||||
Nominate another person to exercise these rights on your behalf
|
||||
in the event of your death or incapacity.
|
||||
</li>
|
||||
<li>
|
||||
Lodge a grievance with us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
, or with the Data Protection Board of India.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
You can edit your name, handle, avatar, and reading preferences at
|
||||
any time from your profile settings. For any other request, write
|
||||
to us at the email above — we respond within 30 days.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="9. Children">
|
||||
<p>
|
||||
The Service is not directed to children under 13. If you are under
|
||||
13, please do not use the Service or provide any personal
|
||||
information. If we learn that we have collected personal
|
||||
information from a child under 13 without verified parental
|
||||
consent, we will delete that information promptly. Parents and
|
||||
guardians who believe their child has provided personal
|
||||
information to us can contact us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="10. Security">
|
||||
<p>
|
||||
We use industry-standard safeguards to protect your information,
|
||||
including encryption in transit (HTTPS), bcrypt password hashing,
|
||||
httpOnly secure cookies, signed CSRF tokens for third-party
|
||||
sign-in, and least-privilege access controls. No method of
|
||||
transmission or storage is perfectly secure; we will notify you
|
||||
and the appropriate authority of a personal-data breach as
|
||||
required by law.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="11. Changes to this Policy">
|
||||
<p>
|
||||
We may update this Policy from time to time. We will revise the
|
||||
“Effective” date at the top of the page and, for
|
||||
material changes, give you reasonable advance notice (for
|
||||
example, by email or an in-app notice).
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="12. Contact us">
|
||||
<p>
|
||||
Grievance Officer: contact{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>{" "}
|
||||
with the subject line “Privacy” and we will route
|
||||
your message appropriately. {OPERATOR} is registered in India.
|
||||
</p>
|
||||
</Section>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function Section({
|
||||
title,
|
||||
children,
|
||||
}: {
|
||||
title: string;
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<section className="space-y-3">
|
||||
<h2 className="text-xl font-bold text-foreground">{title}</h2>
|
||||
{children}
|
||||
</section>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,329 @@
|
||||
import type { Metadata } from "next";
|
||||
import Link from "next/link";
|
||||
import { PageHeader } from "@/components/page-header";
|
||||
import { buildOgMeta } from "@/lib/og";
|
||||
|
||||
const EFFECTIVE_DATE = "June 1, 2026";
|
||||
const CONTACT_EMAIL = "support@prabhupadasays.org";
|
||||
const OPERATOR = "Krispire Solutions LLP";
|
||||
const SERVICE = "Prabhupāda Says";
|
||||
|
||||
export function generateMetadata(): Metadata {
|
||||
return buildOgMeta({
|
||||
title: "Terms of Use — Prabhupāda Says",
|
||||
quote:
|
||||
"The terms that govern your use of Prabhupāda Says — please read carefully.",
|
||||
});
|
||||
}
|
||||
|
||||
export default function TermsOfUsePage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-background">
|
||||
<PageHeader>
|
||||
<Link
|
||||
href="/"
|
||||
className="text-sm text-muted-foreground hover:text-foreground transition-colors"
|
||||
>
|
||||
← Home
|
||||
</Link>
|
||||
<h1 className="mt-3 text-3xl font-bold text-foreground">
|
||||
Terms of Use
|
||||
</h1>
|
||||
<p className="mt-1 text-muted-foreground">
|
||||
Effective {EFFECTIVE_DATE}
|
||||
</p>
|
||||
</PageHeader>
|
||||
|
||||
<main className="max-w-3xl mx-auto px-6 py-10 space-y-10 text-[15px] leading-relaxed text-muted-foreground">
|
||||
<section className="space-y-3">
|
||||
<p>
|
||||
These Terms of Use (“Terms”) form a legally binding
|
||||
agreement between you and {OPERATOR} (“we”,
|
||||
“us”, “our”) and govern your access to and
|
||||
use of {SERVICE} (the “Service”) at
|
||||
prabhupadasays.org. By creating an account or otherwise using the
|
||||
Service, you agree to these Terms. If you do not agree, please do
|
||||
not use the Service.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<Section title="1. Eligibility">
|
||||
<p>
|
||||
You must be at least 13 years old to use the Service. By using the
|
||||
Service you represent that you meet this age requirement. If you
|
||||
are between 13 and the age of majority where you live, you confirm
|
||||
that your parent or legal guardian has reviewed and agreed to
|
||||
these Terms on your behalf.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="2. Your account">
|
||||
<p>
|
||||
You may create an account by signing up with an email and password
|
||||
or by using a supported third-party sign-in provider (Google or
|
||||
Facebook). You are responsible for keeping your sign-in
|
||||
credentials confidential and for everything that happens under
|
||||
your account. Notify us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>{" "}
|
||||
promptly if you suspect any unauthorised use.
|
||||
</p>
|
||||
<p>
|
||||
You agree to provide accurate information when signing up and to
|
||||
keep it current. We may suspend or terminate accounts that contain
|
||||
false, misleading, or impersonating information.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="3. About the content">
|
||||
<p>
|
||||
{SERVICE} presents the books, letters, lectures, conversations,
|
||||
and other writings of His Divine Grace A.C. Bhaktivedanta Swami
|
||||
Prabhupāda, sourced from the pre-1980s Vedabase and related
|
||||
archival materials. We provide this content for personal study,
|
||||
research, and devotional engagement. We are an independent
|
||||
project; we are not affiliated with, nor do we represent or
|
||||
promote the views of, any institution, governing body, or faction
|
||||
within the broader Vaiṣṇava community.
|
||||
</p>
|
||||
<p>
|
||||
We strive for textual fidelity, but the archive is being expanded
|
||||
and verified on an ongoing basis. We do not warrant that the
|
||||
content is free of typographical errors or omissions. If you spot
|
||||
an issue, please let us know via the feedback form.
|
||||
</p>
|
||||
<p>
|
||||
The interface, software, database structure, design, and original
|
||||
editorial work on the Service are owned by {OPERATOR} or its
|
||||
licensors and are protected by copyright and other laws.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="4. Acceptable use">
|
||||
<p>You agree not to:</p>
|
||||
<ul className="list-disc pl-6 space-y-1.5">
|
||||
<li>
|
||||
Use the Service to break any law, infringe anyone’s rights,
|
||||
or send unlawful, defamatory, harassing, hateful, or sexually
|
||||
explicit content.
|
||||
</li>
|
||||
<li>
|
||||
Impersonate any person or organisation, including Śrīla
|
||||
Prabhupāda or any disciple, or misrepresent your affiliation
|
||||
with anyone.
|
||||
</li>
|
||||
<li>
|
||||
Upload malware, exploit vulnerabilities, attempt to gain
|
||||
unauthorised access, or interfere with the integrity or
|
||||
performance of the Service.
|
||||
</li>
|
||||
<li>
|
||||
Scrape, crawl, or harvest data from the Service in a way that
|
||||
imposes a disproportionate load on our systems, or attempt to
|
||||
extract content for the purpose of building a competing dataset.
|
||||
</li>
|
||||
<li>
|
||||
Use the Service for commercial purposes (such as selling user
|
||||
data, paid republishing of our editorial work, or running paid
|
||||
services on top of our APIs) without our prior written consent.
|
||||
</li>
|
||||
<li>
|
||||
Use the URL-shortener feature to disguise links to malware,
|
||||
phishing, or unlawful content.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
We may remove user-generated content and suspend or terminate
|
||||
accounts that violate these Terms.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="5. Your content">
|
||||
<p>
|
||||
The Service lets you create user content — including posts,
|
||||
bookmarks, collections, and short share links. You retain
|
||||
ownership of any original material you contribute. By submitting
|
||||
user content to the Service, you grant us a worldwide,
|
||||
non-exclusive, royalty-free licence to host, store, reproduce,
|
||||
display, and distribute that content as needed to operate the
|
||||
Service (for example, to render a public collection on your
|
||||
profile or to deliver a share link you created).
|
||||
</p>
|
||||
<p>
|
||||
You are responsible for the user content you create. You confirm
|
||||
that you have the rights necessary to submit it and that it does
|
||||
not violate any law or third-party right.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="6. Third-party services">
|
||||
<p>
|
||||
The Service integrates with third-party services for sign-in,
|
||||
object storage, email delivery, and search. Your use of those
|
||||
services is also governed by their respective terms and privacy
|
||||
policies. We are not responsible for outages, changes, or actions
|
||||
taken by third-party providers.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="7. Privacy">
|
||||
<p>
|
||||
Our{" "}
|
||||
<Link
|
||||
href="/privacy"
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
Privacy Policy
|
||||
</Link>{" "}
|
||||
explains how we collect, use, and share your information. By using
|
||||
the Service, you agree to the practices described in that Policy.
|
||||
For account deletion, see{" "}
|
||||
<Link
|
||||
href="/data-deletion"
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
Data Deletion
|
||||
</Link>
|
||||
.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="8. Changes to the Service">
|
||||
<p>
|
||||
We are actively developing the Service and may add, change, or
|
||||
remove features at any time. We will try to give reasonable
|
||||
advance notice of significant changes, but we may need to make
|
||||
urgent changes for security or legal reasons without notice.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="9. Disclaimers">
|
||||
<p>
|
||||
The Service is provided on an “as is” and “as
|
||||
available” basis. To the maximum extent permitted by law,
|
||||
we disclaim all warranties, whether express or implied, including
|
||||
warranties of merchantability, fitness for a particular purpose,
|
||||
and non-infringement. We do not warrant that the Service will be
|
||||
uninterrupted, secure, or free from errors.
|
||||
</p>
|
||||
<p>
|
||||
The Service is intended for educational and devotional use. It is
|
||||
not a substitute for professional spiritual, medical, legal,
|
||||
financial, or other professional advice.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="10. Limitation of liability">
|
||||
<p>
|
||||
To the maximum extent permitted by law, {OPERATOR} and its
|
||||
partners, employees, and contractors will not be liable for any
|
||||
indirect, incidental, special, consequential, exemplary, or
|
||||
punitive damages, or for any loss of profits, revenue, data,
|
||||
goodwill, or other intangible losses arising out of or related to
|
||||
your use of (or inability to use) the Service.
|
||||
</p>
|
||||
<p>
|
||||
Where liability cannot be excluded under applicable law, our
|
||||
total aggregate liability to you in any 12-month period will not
|
||||
exceed the greater of (a) ₹1,000 (Indian Rupees one thousand) or
|
||||
(b) the amount you have paid us for the Service in that period
|
||||
(which is typically zero, as the Service is provided free of
|
||||
charge).
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="11. Indemnity">
|
||||
<p>
|
||||
You agree to indemnify and hold harmless {OPERATOR}, its partners,
|
||||
employees, and contractors from and against any claims, losses,
|
||||
damages, liabilities, costs, and expenses (including reasonable
|
||||
legal fees) arising out of (a) your use of the Service in
|
||||
violation of these Terms, (b) any user content you submit, or
|
||||
(c) your violation of any law or third-party right.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="12. Termination">
|
||||
<p>
|
||||
You may stop using the Service at any time and may delete your
|
||||
account by following the steps on the{" "}
|
||||
<Link
|
||||
href="/data-deletion"
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
Data Deletion
|
||||
</Link>{" "}
|
||||
page. We may suspend or terminate your access to the Service if
|
||||
you violate these Terms, if required by law, or if it is necessary
|
||||
to protect the Service or its users. Sections of these Terms that
|
||||
by their nature should survive termination (including ownership,
|
||||
disclaimers, limitation of liability, indemnity, and governing
|
||||
law) will continue to apply after termination.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="13. Governing law and disputes">
|
||||
<p>
|
||||
These Terms are governed by the laws of India, without regard to
|
||||
its conflict-of-laws principles. Any dispute arising out of or in
|
||||
connection with these Terms or the Service shall be subject to
|
||||
the exclusive jurisdiction of the competent courts located in
|
||||
India.
|
||||
</p>
|
||||
<p>
|
||||
Before initiating any formal dispute, please write to us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>{" "}
|
||||
so we can try to resolve the matter informally.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="14. Changes to these Terms">
|
||||
<p>
|
||||
We may update these Terms from time to time. We will revise the
|
||||
“Effective” date above and, for material changes,
|
||||
give you reasonable advance notice. If you continue to use the
|
||||
Service after the updated Terms take effect, you accept the
|
||||
updated Terms.
|
||||
</p>
|
||||
</Section>
|
||||
|
||||
<Section title="15. Contact">
|
||||
<p>
|
||||
For any questions about these Terms, write to us at{" "}
|
||||
<a
|
||||
href={`mailto:${CONTACT_EMAIL}`}
|
||||
className="text-primary underline-offset-4 hover:underline"
|
||||
>
|
||||
{CONTACT_EMAIL}
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</Section>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function Section({
|
||||
title,
|
||||
children,
|
||||
}: {
|
||||
title: string;
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<section className="space-y-3">
|
||||
<h2 className="text-xl font-bold text-foreground">{title}</h2>
|
||||
{children}
|
||||
</section>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user