feat: add policy pages

This commit is contained in:
gosangam
2026-06-02 01:57:08 +05:30
parent 0352cb2003
commit 91d5d272d2
168 changed files with 1326 additions and 81 deletions
+274
View File
@@ -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"
>
&larr; 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 &mdash; 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 &mdash; 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>{" "}
&mdash; for example, in connection with a pending legal claim,
regulatory request, or tax/accounting requirement &mdash; 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>{" "}
&mdash; we acknowledge your request.
</li>
<li>
<strong className="text-foreground">
Within {SLA_DAYS} days
</strong>{" "}
&mdash; 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>{" "}
&mdash; 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 &ldquo;Prabhupāda Says&rdquo; app
connection in your provider settings:
</p>
<ul className="list-disc pl-6 space-y-1.5">
<li>
<strong className="text-foreground">Google:</strong>&nbsp;visit your
Google Account &rarr; <em>Security</em> &rarr;{" "}
<em>Third-party apps with account access</em> &rarr; select
&ldquo;Prabhupāda Says&rdquo; &rarr; <em>Remove access</em>.
</li>
<li>
<strong className="text-foreground">Facebook:</strong> visit{" "}
<em>Settings &amp; privacy</em> &rarr; <em>Settings</em> &rarr;{" "}
<em>Apps and websites</em> &rarr; select &ldquo;Prabhupāda
Says&rdquo; &rarr; <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>
);
}
+20
View File
@@ -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>
);
}
+405
View File
@@ -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"
>
&larr; 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} (&ldquo;we&rdquo;,
&ldquo;us&rdquo;, &ldquo;our&rdquo;) collects, uses, stores, and
shares your personal information when you use {SERVICE}{" "}
(the &ldquo;Service&rdquo;) 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&rsquo;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 &mdash; 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 &ldquo;Login with Google&rdquo; or
&ldquo;Login with Facebook&rdquo;, 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 &mdash; 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> &mdash;
when you use &ldquo;Continue with Google&rdquo;, Google
authenticates you and shares your profile basics with us.
</li>
<li>
<strong className="text-foreground">Meta Platforms, Inc.</strong>{" "}
&mdash; when you use &ldquo;Continue with Facebook&rdquo;,
Facebook authenticates you and shares your profile basics with
us.
</li>
<li>
<strong className="text-foreground">Cloudflare, Inc.</strong>{" "}
&mdash; we store avatar images you upload in Cloudflare R2
object storage.
</li>
<li>
<strong className="text-foreground">MongoDB, Inc. and
hosting/infrastructure providers</strong> &mdash; we store
account data and content in managed Postgres, MongoDB, and
DragonflyDB instances.
</li>
<li>
<strong className="text-foreground">Typesense, Inc.</strong>{" "}
&mdash; 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> &mdash; 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&rsquo;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 &mdash; 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
&ldquo;Effective&rdquo; 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 &ldquo;Privacy&rdquo; 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>
);
}
+329
View File
@@ -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"
>
&larr; 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 (&ldquo;Terms&rdquo;) form a legally binding
agreement between you and {OPERATOR} (&ldquo;we&rdquo;,
&ldquo;us&rdquo;, &ldquo;our&rdquo;) and govern your access to and
use of {SERVICE} (the &ldquo;Service&rdquo;) 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&rsquo;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 &mdash; 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 &ldquo;as is&rdquo; and &ldquo;as
available&rdquo; 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
&ldquo;Effective&rdquo; 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>
);
}