使用说明
FSP MCP客户端React应用程序
一个使用TypeScript、Vite和Tailwind CSS构建的现代React应用程序,具有AI集成和模型上下文协议(MCP)支持。
🚀 快速开始
先决条件
- Node.js(版本16或更高)
- npm包管理器
安装
-
克隆存储库
-
安装依赖项:
npm install -
设置环境变量:
- 复制
.env归档并配置环境变量
- 复制
VITE_AZURE_RESOURCE_NAME=
VITE_AZURE_API_KEY=
VITE_AZURE_MODEL_NAME=
VITE_AZURE_MCP_ENDPOINT=
- 启动开发服务器:
npm run dev
该应用程序将在 http://localhost:5173
📦 可用脚本
npm run dev-使用热重载启动开发服务器npm run build-构建生产应用程序npm run lint-运行Biome检查代码质量和格式npm run preview-在本地预览生产版本
🛠 技术栈
核心框架
- 反应 (v19.1.1)-UI库
- TypeScript (v5.8.3)-类型安全的JavaScript
- 维特 (v7.1.7)-快速构建工具和开发服务器
造型和UI
- Tailwind CSS (v4.1.13)-实用程序优先的CSS框架
- Shadcn/Radix用户界面 -可访问的UI组件
- 对话框、标签、插槽组件
- Lucide反应 -图标库
- 类别差异权限 -组件变体实用程序
人工智能和数据获取
- AI 开发工具包 (v5.0.59)-人工智能集成工具包
- Azure人工智能SDK (v2.0.42)-Azure人工智能服务
- 模型上下文协议SDK (v1.18.2)-MCP集成
- TanStack查询 (v5.90.2)-数据获取和缓存
- 凯 (v1.11.0)-HTTP客户端
内容和文件
- React Markdown (v10.1.0)-Markdown渲染
- 重新键入突出显示 (v7.0.2)-语法高亮显示
开发工具
- 生物群系 (v2.4.4)-用于web项目的快速多功能工具链
- Vite插件React SWC -快速反应刷新
📁 项目结构
src/
├── assets/ # Static assets (images, icons, etc.)
├── components/ # Reusable React components
│ ├── chat/ # Chat-related components
│ └── ui/ # UI components (likely shadcn/ui)
├── contexts/ # React context providers
├── lib/ # Utility functions and configurations
├── pages/ # Page components
├── providers/ # Provider components
├── queries/ # TanStack Query hooks
├── types/ # TypeScript type definitions
├── App.tsx # Main application component
├── main.tsx # Application entry point
└── index.css # Global styles
⚙️ 配置
Vite配置
- 使用SWC快速刷新React
- 顺风CSS集成
- 路径别名(
@→src/)
生物特征配置
- 快速梳理和格式化
- TypeScript支持
- JSX/React支持
Tailwind CSS
- 配置了shadcn/ui兼容性
- 用于主题化的CSS变量
- Lucide图标集成
TypeScript
- 严格类型检查
- 针对不同环境的多个tsconfig文件
- 现代ES2020目标
🎨 UI组件
此项目使用具有以下配置的shadcn/ui组件:
- 风格:纽约
- 底色:中立
- CSS变量:已启用
- 图标:Lucide React
🔧 环境设置
应用程序要求在中配置环境变量 .env 文件。确保为以下内容设置必要的变量:
- AI服务配置
- API端点
- 认证令牌
🏗 构建和部署
生产构建
npm run build
This creates an optimized build in the `dist/` directory.
### Preview Production Build
```shell script
npm run preview
📝 代码质量
该项目通过以下方式保持代码质量:
- 生物群系 用于代码过滤和格式化
- TypeScript 用于类型安全
运行linting:
npm run lint
🤝 发展
添加新组件
- 将可重复使用的组件放入
src/components/ - 对所有组件使用TypeScript
- 遵循现有的命名约定
- 利用Tailwind CSS进行样式设计
状态管理
- 使用React Context进行全局状态(参见
src/contexts/) - 用于服务器状态管理的TanStack查询
- 使用React钩子的本地组件状态
造型指南
- 使用Tailwind CSS实用程序类
- 利用CSS变量进行主题化
- 遵循shadcn/ui组件模式
📚 关键依赖关系
| 包装 | 用途 |
|---|---|
@ai-sdk/azure |
Azure AI服务集成 |
@modelcontextprotocol/sdk |
模型上下文协议支持 |
@tanstack/react-query |
服务器状态管理 |
react-markdown |
Markdown内容渲染 |
tailwindcss |
实用程序优先的CSS框架 |
lucide-react |
图标库 |
🚀 开发入门
- 安装依赖项:
npm install - 启动开发服务器:
npm run dev - 打开浏览器:导航到
http://localhost:5173 - 开始编码:当您进行更改时,应用程序将热重新加载
有关所用技术的更多信息:
