From c6ccc2ae3f0b6dcee2fb36106004ac15e4061def Mon Sep 17 00:00:00 2001 From: Ember <197652334@qq.com> Date: Sun, 2 Nov 2025 22:55:05 +0800 Subject: [PATCH 1/3] feat(landing): integrate real community tweets in CommunitySection with author avatars and links --- .../components/landing/CommunitySection.tsx | 113 ++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 web/src/components/landing/CommunitySection.tsx diff --git a/web/src/components/landing/CommunitySection.tsx b/web/src/components/landing/CommunitySection.tsx new file mode 100644 index 00000000..1a3c8e8e --- /dev/null +++ b/web/src/components/landing/CommunitySection.tsx @@ -0,0 +1,113 @@ +import { motion } from 'framer-motion' +import AnimatedSection from './AnimatedSection' + +type CardProps = { + quote: string + authorName: string + handle: string + avatarUrl: string + tweetUrl?: string + delay?: number +} + +function TestimonialCard({ quote, authorName, handle, avatarUrl, tweetUrl, delay = 0 }: CardProps) { + return ( + +

+ “{quote}” +

+
+ {/* 头像:优先使用传入头像,失败则退回到首字母头像 */} + {`${authorName} { + const target = e.currentTarget as HTMLImageElement + target.onerror = null + target.src = `https://api.dicebear.com/7.x/initials/svg?seed=${encodeURIComponent(authorName)}` + }} + /> + {tweetUrl ? ( + + {authorName} ({handle}) + + ) : ( + + {authorName} ({handle}) + + )} +
+
+ ) +} + +export default function CommunitySection() { + const staggerContainer = { animate: { transition: { staggerChildren: 0.1 } } } + + // 推特内容整合(保持原三列布局,超出自动换行) + const items: CardProps[] = [ + { + quote: + '前不久非常火的 AI 量化交易系统 NOF1,在 GitHub 上有人将其复刻并开源,这就是 NOFX 项目。基于 DeepSeek、Qwen 等大语言模型,打造的通用架构 AI 交易操作系统,完成了从决策、到交易、再到复盘的闭环。GitHub: https://github.com/NoFxAiOS/nofx', + authorName: 'Michael Williams', + handle: '@MichaelWil93725', + avatarUrl: 'https://unavatar.io/twitter/MichaelWil93725', + tweetUrl: 'https://twitter.com/MichaelWil93725/status/1984980920395604008', + delay: 0, + }, + { + quote: '🔥 Just discovered: nofx - A trending GitHub project!', + authorName: 'NiLeSh KhEdKaR®', + handle: '@nileshb4u', + // 优先使用 GitHub 头像,稳定可访问 + avatarUrl: 'https://avatars.githubusercontent.com/u/200875050?v=4', + tweetUrl: 'https://twitter.com/nileshb4u/status/1984966234878722545', + delay: 0.05, + }, + { + quote: + '跑了一晚上 @nofx_ai 开源的 AI 自动交易,太有意思了,就看 AI 在那一会开空一会开多,一顿操作,虽然看不懂为什么,但是一晚上帮我赚了 6% 收益', + authorName: 'DIŸgöd', + handle: '@DIYgod', + avatarUrl: 'https://avatars.githubusercontent.com/u/8266075?v=4', + tweetUrl: 'https://twitter.com/DIYgod/status/1984442354515017923', + delay: 0.1, + }, + { + quote: + 'Open-source NOFX revives the legendary Alpha Arena, an AI-powered crypto futures battleground. Built on DeepSeek/Qwen AI, it trades live on Binance, Hyperliquid, and Aster DEX, featuring multi-AI battles and self-learning bots', + authorName: 'Kai', + handle: '@hqmank', + avatarUrl: 'https://avatars.githubusercontent.com/u/49855507?v=4', + tweetUrl: 'https://twitter.com/hqmank/status/1984227431994290340', + delay: 0.15, + }, + ] + + return ( + +
+ + {items.map((item, idx) => ( + + ))} + +
+
+ ) +} From 2cee70422007652b5e05e4c5a41120e555c2d279 Mon Sep 17 00:00:00 2001 From: Ember <197652334@qq.com> Date: Sun, 2 Nov 2025 23:49:23 +0800 Subject: [PATCH 2/3] chore(landing): add lightweight AnimatedSection wrapper for main-based branch --- web/src/components/landing/AnimatedSection.tsx | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 web/src/components/landing/AnimatedSection.tsx diff --git a/web/src/components/landing/AnimatedSection.tsx b/web/src/components/landing/AnimatedSection.tsx new file mode 100644 index 00000000..2c16cfcd --- /dev/null +++ b/web/src/components/landing/AnimatedSection.tsx @@ -0,0 +1,5 @@ +export default function AnimatedSection({ children }: { children: React.ReactNode }) { + // 轻量容器:统一间距与可读性,避免引入额外依赖 + return
{children}
+} + From cf436510705dfa9f967b18154b40c33c06fd74a0 Mon Sep 17 00:00:00 2001 From: Ember <197652334@qq.com> Date: Sun, 2 Nov 2025 23:52:13 +0800 Subject: [PATCH 3/3] chore(landing): add lightweight AnimatedSection wrapper for main-based branch --- .../components/landing/CommunitySection.tsx | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/web/src/components/landing/CommunitySection.tsx b/web/src/components/landing/CommunitySection.tsx index 1a3c8e8e..95ef1ab1 100644 --- a/web/src/components/landing/CommunitySection.tsx +++ b/web/src/components/landing/CommunitySection.tsx @@ -60,25 +60,19 @@ export default function CommunitySection() { '前不久非常火的 AI 量化交易系统 NOF1,在 GitHub 上有人将其复刻并开源,这就是 NOFX 项目。基于 DeepSeek、Qwen 等大语言模型,打造的通用架构 AI 交易操作系统,完成了从决策、到交易、再到复盘的闭环。GitHub: https://github.com/NoFxAiOS/nofx', authorName: 'Michael Williams', handle: '@MichaelWil93725', - avatarUrl: 'https://unavatar.io/twitter/MichaelWil93725', - tweetUrl: 'https://twitter.com/MichaelWil93725/status/1984980920395604008', + avatarUrl: + 'https://pbs.twimg.com/profile_images/1767615411594694659/Mj8Fdt6o_400x400.jpg', + tweetUrl: + 'https://twitter.com/MichaelWil93725/status/1984980920395604008', delay: 0, }, - { - quote: '🔥 Just discovered: nofx - A trending GitHub project!', - authorName: 'NiLeSh KhEdKaR®', - handle: '@nileshb4u', - // 优先使用 GitHub 头像,稳定可访问 - avatarUrl: 'https://avatars.githubusercontent.com/u/200875050?v=4', - tweetUrl: 'https://twitter.com/nileshb4u/status/1984966234878722545', - delay: 0.05, - }, { quote: '跑了一晚上 @nofx_ai 开源的 AI 自动交易,太有意思了,就看 AI 在那一会开空一会开多,一顿操作,虽然看不懂为什么,但是一晚上帮我赚了 6% 收益', authorName: 'DIŸgöd', handle: '@DIYgod', - avatarUrl: 'https://avatars.githubusercontent.com/u/8266075?v=4', + avatarUrl: + 'https://pbs.twimg.com/profile_images/1628393369029181440/r23HDDJk_400x400.jpg', tweetUrl: 'https://twitter.com/DIYgod/status/1984442354515017923', delay: 0.1, }, @@ -87,7 +81,8 @@ export default function CommunitySection() { 'Open-source NOFX revives the legendary Alpha Arena, an AI-powered crypto futures battleground. Built on DeepSeek/Qwen AI, it trades live on Binance, Hyperliquid, and Aster DEX, featuring multi-AI battles and self-learning bots', authorName: 'Kai', handle: '@hqmank', - avatarUrl: 'https://avatars.githubusercontent.com/u/49855507?v=4', + avatarUrl: + 'https://pbs.twimg.com/profile_images/1905441261911506945/4YhLIqUm_400x400.jpg', tweetUrl: 'https://twitter.com/hqmank/status/1984227431994290340', delay: 0.15, },