import { ComponentChildren } from "preact";
import { Breadcrumb } from "./components/Breadcrumb.tsx";
type SectionProps = {
title: string;
children: ComponentChildren;
};
const Section = ({ title, children }: SectionProps) => (
{title}
Grain is a photo sharing app built on the{" "} AT Protocol . All data, including photos, galleries, favorites, and metadata, is public and stored on the AT Protocol network. Users can upload photos, create and favorite galleries, and view non-location EXIF metadata.
Grain is an open source project. These Terms apply to your use of the
hosted version at{" "}
grain.social, not to self-hosted instances or forks of
the source code.
Grain uses the AT Protocol, so users retain full control over their data. We are an independent project and not affiliated with Bluesky or the AT Protocol.
If you use a grain.social{" "}
handle, your data may be stored on our own self-hosted{" "}
PDS (Personal Data Server)
{" "}
in accordance with protocol standards.
You are responsible for any content you share. Do not upload content you do not have rights to. All uploads are publicly visible and cannot currently be set as private.
We use{" "} Goatcounter {" "} for basic analytics. No personal data is collected, tracked, or sold.
Do not upload illegal content, harass users, impersonate others, or attempt to disrupt the network.
Grain is provided "as is." We do not guarantee uptime, data retention, or uninterrupted access.
We reserve the right to suspend or terminate your access to Grain at any time, without prior notice, for conduct that we believe violates these Terms, our community standards, or is harmful to other users or the AT Protocol network. Terminated accounts may lose access to uploaded content unless retained through the protocol’s data persistence mechanisms.
We may update these terms periodically. Continued use means acceptance of any changes.
For any questions about these Terms, your account, or issues with the app, you can contact us at{" "} support@grain.social .
Your data is stored on the AT Protocol. If you use a{" "}
grain.social{" "}
handle, it may be stored on our PDS. We do not store or access data
beyond the protocol’s standard behavior.
All content on Grain is public. Private uploads are not currently supported.
We optionally collect and display EXIF metadata from your photos. At upload time, you can choose whether to allow this metadata to be collected. The metadata is stored according to standard AT Protocol storage mechanisms and is not retained outside the protocol or used for other purposes. We do not collect GPS or location data from your photos.
You can learn more about the types of metadata commonly embedded in photos at{" "} exiv2.org .
We use{" "} Goatcounter {" "} for analytics. It is privacy-focused: no IP addresses, cookies, or personal data is collected.
We do not serve ads, use third-party tracking, or sell user data.
Grain is not intended for users under 13 years of age.
This policy may be updated. Material changes will be communicated via the app or site.
For privacy questions, contact us at{" "} support@grain.social .
Grain respects the intellectual property rights of others and expects users to do the same. If you believe your copyrighted work has been used in a way that constitutes infringement, please notify us promptly.
Your infringement notice must include: (1) a description of the copyrighted work, (2) the location of the infringing material, (3) your contact information, (4) a statement that you believe in good faith the use is not authorized, and (5) a statement, under penalty of perjury, that the information is accurate.
Grain complies with the Digital Millennium Copyright Act (DMCA). If you are a copyright holder and believe your rights have been violated, you may file a DMCA notice with the required information to our designated agent. We will promptly respond to all valid DMCA notices and take appropriate action, including removal of the infringing content and disabling access.
Accounts that repeatedly infringe copyright may be suspended or removed in accordance with AT Protocol and Grain Social’s moderation guidelines.
To report infringement or submit a DMCA notice, contact us at{" "} support@grain.social .