From 8d0d2b64bdf189bc6529336bf83fd6e029faa76d Mon Sep 17 00:00:00 2001 From: hobby Date: Thu, 27 Feb 2025 08:12:47 +0800 Subject: [PATCH] add header --- package-lock.json | 25 ++++++++++++------- package.json | 1 + src/App.tsx | 7 +++--- src/components/Header.tsx | 49 ++++++++++++++++++++++++++++++++++++++ src/components/Layout.tsx | 26 +++++++------------- src/config/aiCharacters.ts | 4 ++-- 6 files changed, 82 insertions(+), 30 deletions(-) create mode 100644 src/components/Header.tsx diff --git a/package-lock.json b/package-lock.json index 35d7320..cd3f9e8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,6 +25,7 @@ "openai": "^4.83.0", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-github-btn": "^1.4.0", "react-markdown": "^9.0.3", "rehype-katex": "^7.0.1", "remark-gfm": "^4.0.1", @@ -1315,11 +1316,7 @@ }, "node_modules/@radix-ui/react-switch": { "version": "1.1.3", -<<<<<<< HEAD "resolved": "https://registry.npmmirror.com/@radix-ui/react-switch/-/react-switch-1.1.3.tgz", -======= - "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.1.3.tgz", ->>>>>>> develop "integrity": "sha512-1nc+vjEOQkJVsJtWPSiISGT6OKm4SiOdjMo+/icLxo2G4vxz1GntC5MzfL4v8ey9OEfw787QCD1y3mUv0NiFEQ==", "dependencies": { "@radix-ui/primitive": "1.1.1", @@ -1442,11 +1439,7 @@ }, "node_modules/@radix-ui/react-use-previous": { "version": "1.1.0", -<<<<<<< HEAD "resolved": "https://registry.npmmirror.com/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz", -======= - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz", ->>>>>>> develop "integrity": "sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==", "peerDependencies": { "@types/react": "*", @@ -3037,6 +3030,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/github-buttons": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/github-buttons/-/github-buttons-2.29.1.tgz", + "integrity": "sha512-TV3YgAKda5hPz75n7QXmGCsSzgVya1vvmBieebg3EB5ScmashTZ0FldViG1aU2d4V5rcAGrtQ7k5uAaCo0A4PA==" + }, "node_modules/glob": { "version": "10.4.5", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", @@ -5200,6 +5198,17 @@ "react": "^18.3.1" } }, + "node_modules/react-github-btn": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/react-github-btn/-/react-github-btn-1.4.0.tgz", + "integrity": "sha512-lV4FYClAfjWnBfv0iNlJUGhamDgIq6TayD0kPZED6VzHWdpcHmPfsYOZ/CFwLfPv4Zp+F4m8QKTj0oy2HjiGXg==", + "dependencies": { + "github-buttons": "^2.22.0" + }, + "peerDependencies": { + "react": ">=16.3.0" + } + }, "node_modules/react-markdown": { "version": "9.0.3", "resolved": "https://registry.npmmirror.com/react-markdown/-/react-markdown-9.0.3.tgz", diff --git a/package.json b/package.json index ca30053..e363d59 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "openai": "^4.83.0", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-github-btn": "^1.4.0", "react-markdown": "^9.0.3", "rehype-katex": "^7.0.1", "remark-gfm": "^4.0.1", diff --git a/src/App.tsx b/src/App.tsx index bdae7c3..7154bbe 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,11 +1,12 @@ import ChatUI from './components/ChatUI' import './App.css' +import Layout from './components/Layout' function App() { return ( -
- -
+ + + ) } diff --git a/src/components/Header.tsx b/src/components/Header.tsx new file mode 100644 index 0000000..5862387 --- /dev/null +++ b/src/components/Header.tsx @@ -0,0 +1,49 @@ +import React, { useEffect } from 'react'; +import GitHubButton from 'react-github-btn'; + +const Header: React.FC = () => { + useEffect(() => { + const fetchGitHubStars = async () => { + try { + const response = await fetch('https://api.github.com/repos/maojindao55/botgroup.chat'); + const data = await response.json(); + const starsElement = document.getElementById('github-stars'); + if (starsElement) { + starsElement.textContent = data.stargazers_count.toLocaleString(); + } + } catch (error) { + console.error('Failed to fetch GitHub stars:', error); + } + }; + + fetchGitHubStars(); + }, []); + + return ( +
+
+ {/* Logo */} +
+ + botgroup.chat + +
+ + {/* GitHub Star Button */} +
+ + Star + +
+
+
+ ); +}; + +export default Header; \ No newline at end of file diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index d153d13..e714782 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -1,23 +1,15 @@ -interface LayoutProps { - children: React.ReactNode -} +import React from 'react'; +import Header from './Header'; -function Layout({ children }: LayoutProps) { +const Layout: React.FC<{ children: React.ReactNode }> = ({ children }) => { return ( -
-
- {/* 这里可以放导航栏 */} -
- -
+
+
+
{children}
- -
- ) -} + ); +}; -export default Layout \ No newline at end of file +export default Layout; \ No newline at end of file diff --git a/src/config/aiCharacters.ts b/src/config/aiCharacters.ts index 27e40a3..72fdecd 100644 --- a/src/config/aiCharacters.ts +++ b/src/config/aiCharacters.ts @@ -140,11 +140,11 @@ export function generateAICharacters(groupName: string): AICharacter[] { }, { id: 'ai8', - name: "智普", + name: "智谱", personality: "glm", model: modelConfigs[5].model, avatar: "/img/glm.gif", - custom_prompt: `你是一个名叫"智普"的硅基生命体,你当前在一个叫"${groupName}" 的聊天群里`, + custom_prompt: `你是一个名叫"智谱"的硅基生命体,你当前在一个叫"${groupName}" 的聊天群里`, tags: ["新闻报道","分析数据","文字游戏","信息总结"] } ];