mirror of
https://github.com/RayLabsHQ/gitea-mirror.git
synced 2026-03-13 22:12:54 +03:00
- Update softwareVersion from 3.9.2 to 3.11.0 - Add Helm and Nix installation tabs to Getting Started section - Fix Helm instructions to use local chart path (no published repo) - Update Features section: add Metadata Preservation, Force-Push Protection, Git LFS Support - Remove unused @radix-ui/react-icons import from Hero.tsx and dependency from package.json - Update structured data featureList with newer capabilities
90 lines
3.3 KiB
Plaintext
90 lines
3.3 KiB
Plaintext
---
|
|
import {
|
|
RefreshCw,
|
|
FileText,
|
|
ShieldCheck,
|
|
Activity,
|
|
Lock,
|
|
HardDrive,
|
|
} from 'lucide-react';
|
|
|
|
const features = [
|
|
{
|
|
title: "Automated Mirroring",
|
|
description: "Set it and forget it. Automatically sync your GitHub repositories to Gitea on a schedule.",
|
|
icon: RefreshCw,
|
|
gradient: "from-primary/10 to-accent/10",
|
|
iconColor: "text-primary"
|
|
},
|
|
{
|
|
title: "Metadata Preservation",
|
|
description: "Mirror issues, pull requests, releases, labels, milestones, and wiki pages alongside your code.",
|
|
icon: FileText,
|
|
gradient: "from-accent/10 to-accent-teal/10",
|
|
iconColor: "text-accent"
|
|
},
|
|
{
|
|
title: "Force-Push Protection",
|
|
description: "Detect upstream force-pushes and automatically snapshot repos before destructive changes.",
|
|
icon: ShieldCheck,
|
|
gradient: "from-accent-teal/10 to-primary/10",
|
|
iconColor: "text-accent-teal"
|
|
},
|
|
{
|
|
title: "Real-time Dashboard",
|
|
description: "Monitor mirror progress with live updates, activity logs, and per-repo status tracking.",
|
|
icon: Activity,
|
|
gradient: "from-accent-coral/10 to-primary/10",
|
|
iconColor: "text-accent-coral"
|
|
},
|
|
{
|
|
title: "Secure & Self-Hosted",
|
|
description: "Tokens encrypted at rest with AES-256-GCM. Your code stays on your infrastructure.",
|
|
icon: Lock,
|
|
gradient: "from-accent-purple/10 to-primary/10",
|
|
iconColor: "text-accent-purple"
|
|
},
|
|
{
|
|
title: "Git LFS Support",
|
|
description: "Mirror large files and binary assets alongside your repositories with full LFS support.",
|
|
icon: HardDrive,
|
|
gradient: "from-primary/10 to-accent-purple/10",
|
|
iconColor: "text-primary"
|
|
}
|
|
];
|
|
---
|
|
|
|
<section id="features" class="py-16 sm:py-24 px-4 sm:px-6 lg:px-8">
|
|
<div class="max-w-7xl mx-auto">
|
|
<div class="text-center mb-12 sm:mb-16">
|
|
<h2 class="text-2xl sm:text-3xl md:text-4xl font-bold tracking-tight px-4">
|
|
Everything You Need for
|
|
<span class="text-gradient from-primary to-accent block sm:inline"> Reliable Backups</span>
|
|
</h2>
|
|
<p class="mt-4 text-base sm:text-lg text-muted-foreground max-w-2xl mx-auto px-4">
|
|
Powerful features designed to keep your code safe and accessible, no matter what happens.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4 sm:gap-6 lg:gap-8">
|
|
{features.map((feature) => {
|
|
const Icon = feature.icon;
|
|
return (
|
|
<div
|
|
class={`group relative p-6 sm:p-8 rounded-xl sm:rounded-2xl border bg-gradient-to-br ${feature.gradient} backdrop-blur-sm hover:shadow-lg hover:shadow-primary/10 transition-all duration-300 hover:-translate-y-1 hover:border-primary/30 overflow-hidden`}
|
|
>
|
|
<div class="absolute inset-0 bg-gradient-to-br from-transparent to-background/50 opacity-0 group-hover:opacity-100 transition-opacity duration-500" />
|
|
<div class="relative">
|
|
<div class={`inline-flex p-2.5 sm:p-3 rounded-lg bg-background/80 backdrop-blur-sm mb-3 sm:mb-4 ${feature.iconColor} shadow-sm`}>
|
|
<Icon className="w-5 h-5 sm:w-6 sm:h-6" />
|
|
</div>
|
|
|
|
<h3 class="text-lg sm:text-xl font-semibold mb-2">{feature.title}</h3>
|
|
<p class="text-sm sm:text-base text-muted-foreground">{feature.description}</p>
|
|
</div>
|
|
</div>
|
|
);
|
|
})}
|
|
</div>
|
|
</div>
|
|
</section> |