import { createFileRoute } from "@tanstack/react-router"; import { LegalPage, LegalSection, MailLink } from "~/components/legal/LegalPage"; import { getLegalInfo } from "~/fns/legal"; import { TextLink } from "~/ui/TextLink"; import { seo } from "~/utils/seo"; export const Route = createFileRoute("/acceptable-use")({ loader: () => getLegalInfo(), head: ({ match }) => ({ meta: seo({ origin: match.context.publicUrl, path: "/acceptable-use", title: "Acceptable Use Policy ยท gitfor", description: "What you may not do with gitfor repositories, CI runners, editors and hosted sites.", }), }), component: AcceptableUsePage, }); const RULES = [ { title: "Illegal content and harm to people", items: [ "Content that is illegal where it is hosted or targeted, including child sexual abuse material, which we report to the authorities.", "Harassment, threats, doxxing, or incitement to violence, and sharing other people's private information without consent.", "Content that infringes copyright, trademarks or other rights (see the copyright policy).", ], }, { title: "Malware, phishing and fraud", items: [ "Hosting or distributing malware, ransomware or exploit kits used against systems you are not authorized to test. Security research, proof-of-concept code and tooling are welcome when they are clearly labelled and not deployed against others.", "Phishing, credential harvesting, or impersonating another person, brand or service on Sites, custom domains or repository content.", "Scams, fraudulent payments, and using stolen cards or accounts.", ], }, { title: "Spam and platform manipulation", items: [ "Bulk or automated creation of accounts, repositories, issues, comments, stars or follows.", "Spam, SEO link farms, or using notifications, mentions, invitations or email replies to send unsolicited messages.", "Evading a suspension, ban or rate limit, including with new accounts.", ], }, { title: "CI runners, editors and compute", items: [ "Cryptocurrency mining of any kind on cloud runners, editor containers or builds.", "Running long-lived services, proxies, VPNs, bots or game servers on runners or editors; they are for building, testing and deploying your projects.", "Using our infrastructure to scan, attack, flood or gain unauthorized access to any system, including ours.", "Circumventing usage limits, metering or job isolation.", ], }, { title: "Resource abuse", items: [ "Using repositories, LFS, releases or Sites mainly as a CDN, file locker or backup for unrelated media or large binaries.", "Traffic or storage patterns that degrade the service for other users. We may ask you to reduce usage or move to a paid plan before taking action.", ], }, ] as const; function AcceptableUsePage() { const info = Route.useLoaderData(); return ( {RULES.map((rule) => (

You may not use the service for:

))}

We may remove or disable content, pause sites, cancel jobs, restrict features, or suspend or terminate accounts that break these rules, with or without notice where the abuse is severe or ongoing. Hosted sites that receive several independent reports are paused automatically until an administrator reviews them. Where appropriate we tell you what happened and how to appeal.

Use the abuse report form or email{" "} . For copyright, follow the{" "} copyright policy; for vulnerabilities in {info.forgeName} itself, see the{" "} security policy.

); }