Your Name b1eab32c75 初始提交: FLNXI电商素材系统官方网站
- Next.js 项目框架
- 完整的认证系统集成
- 数据库配置和部署脚本
- 产品价格体系和文档
- Docker 部署配置
2025-12-13 21:38:32 +08:00

172 lines
5.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

'use client'
import { Server, Container, HardDrive, Lock, Cloud, Code } from 'lucide-react'
const specs = [
{
category: '部署方式',
icon: Container,
items: [
{ label: '容器化部署', value: 'Docker' },
{ label: '一键安装', value: '支持' },
{ label: '自动更新', value: '支持' },
{ label: '跨平台', value: 'Linux / macOS / Windows' },
],
},
{
category: '存储要求',
icon: HardDrive,
items: [
{ label: '存储类型', value: 'NAS设备' },
{ label: '最小空间', value: '100GB起' },
{ label: '推荐配置', value: '1TB+' },
{ label: '存储协议', value: 'NFS / SMB / iSCSI' },
],
},
{
category: '系统要求',
icon: Server,
items: [
{ label: 'CPU', value: '2核心+' },
{ label: '内存', value: '4GB+' },
{ label: '数据库', value: 'PostgreSQL 14+' },
{ label: 'Docker版本', value: '20.10+' },
],
},
{
category: '安全特性',
icon: Lock,
items: [
{ label: '数据加密', value: 'AES-256' },
{ label: '访问控制', value: '多级权限' },
{ label: '日志审计', value: '完整记录' },
{ label: '备份策略', value: '自动备份' },
],
},
]
const advantages = [
{
icon: Cloud,
title: '私有化部署',
description: '数据完全掌控在企业手中,无需担心隐私泄露',
},
{
icon: Code,
title: '使用权销售',
description: '购买即获得永久使用权,不开放源码,保证系统稳定性',
},
{
icon: Server,
title: '充分利用现有设备',
description: '基于企业现有NAS设备,无需额外购置存储服务器',
},
]
export default function TechSpecs() {
return (
<section id="specs" className="py-24 bg-apple-gray-50">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
{/* Section Header */}
<div className="text-center mb-16">
<h2 className="text-base text-apple-blue font-semibold tracking-wide uppercase mb-3">
技术规格
</h2>
<h3 className="text-4xl sm:text-5xl font-bold text-apple-gray-900 mb-4">
专业可靠的技术架构
</h3>
<p className="text-xl text-apple-gray-600 max-w-2xl mx-auto">
企业级标准,满足各种业务场景需求
</p>
</div>
{/* Specs Grid */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-16">
{specs.map((spec, index) => {
const Icon = spec.icon
return (
<div
key={spec.category}
className="bg-white rounded-2xl p-6 apple-shadow hover:apple-shadow-lg transition-all duration-300"
style={{
animation: 'slideUp 0.6s ease-out',
animationDelay: `${index * 0.1}s`,
}}
>
{/* Icon & Title */}
<div className="flex items-center space-x-3 mb-6">
<div className="p-2 bg-apple-blue/10 rounded-lg">
<Icon className="w-6 h-6 text-apple-blue" />
</div>
<h4 className="text-lg font-semibold text-apple-gray-900">
{spec.category}
</h4>
</div>
{/* Specs List */}
<div className="space-y-3">
{spec.items.map((item) => (
<div key={item.label} className="flex flex-col">
<span className="text-xs text-apple-gray-500 mb-1">
{item.label}
</span>
<span className="text-sm font-medium text-apple-gray-900">
{item.value}
</span>
</div>
))}
</div>
</div>
)
})}
</div>
{/* Advantages */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-6">
{advantages.map((advantage, index) => {
const Icon = advantage.icon
return (
<div
key={advantage.title}
className="relative group bg-white rounded-2xl p-8 apple-shadow hover:apple-shadow-lg transition-all duration-300 overflow-hidden"
style={{
animation: 'scaleIn 0.5s ease-out',
animationDelay: `${index * 0.15}s`,
}}
>
{/* Background Gradient */}
<div className="absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-apple-blue/20 to-purple-500/20 rounded-full blur-2xl -z-10 group-hover:scale-150 transition-transform duration-500" />
{/* Icon */}
<div className="inline-flex p-4 bg-gradient-to-br from-apple-blue to-blue-600 rounded-2xl mb-4 group-hover:scale-110 transition-transform duration-300">
<Icon className="w-8 h-8 text-white" />
</div>
{/* Content */}
<h4 className="text-xl font-semibold text-apple-gray-900 mb-3">
{advantage.title}
</h4>
<p className="text-apple-gray-600 leading-relaxed">
{advantage.description}
</p>
</div>
)
})}
</div>
{/* Docker Badge */}
<div className="mt-16 text-center">
<div className="inline-flex items-center space-x-4 bg-white px-8 py-4 rounded-2xl apple-shadow">
<div className="text-4xl">🐳</div>
<div className="text-left">
<div className="text-sm text-apple-gray-500">Powered by</div>
<div className="text-lg font-semibold text-apple-gray-900">Docker容器化技术</div>
</div>
</div>
</div>
</div>
</section>
)
}