电子商务网站
一个简单的三层电子商务应用程序,具有React前端、Node.js后端、SQLite数据库和AI驱动的聊天机器人助手。
特性
- 首页:浏览20个带有表情符号图标的示例产品
- 产品页面:查看详细信息、评论并将商品添加到购物车
- 购物车:管理数量、删除项目并查看总成本
- 人工智能聊天机器人:由AWS Bedrock Nova Pro提供支持的对话助手
- 询问有关产品的问题 - 搜索库存 - 通过对话将商品添加到购物车 - 获得个性化购物帮助
建筑
- 前端:React+Vite(端口3000)
- 后端:Node.js+Express(端口3001)
- 聊天机器人服务:Python+Flask+Strands代理(端口5000)
- 数据库:带better平方的SQLite 3
- AI模型:AWS Bedrock Nova Pro
设置和运行
1.后端
cd backend
npm install
npm start后端API将在上运行http://localhost:3001
2.聊天机器人服务(可选但推荐)
先决条件:
- Python 3.8+
- 具有基岩访问权限的AWS帐户
- 具有Bedrock权限的AWS凭据
设置:
cd chatbot
# Create virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Configure environment variables
cp .env.example .env
# Edit .env and add your AWS credentials所需的环境变量:
AWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key
AWS_REGION=us-west-2
BACKEND_API_URL=http://localhost:3001运行:
python server.py聊天机器人服务将在http://localhost:5000
📖 看 聊天机器人/README.md 有关详细的设置说明、AWS配置和故障排除。
3.前端
cd frontend
npm install
npm run dev访问http://localhost:3000使用该应用程序。
注: 该应用程序可以在没有聊天机器人服务的情况下工作,但您将没有人工智能助手功能。
API终点
后端API(端口3001)
GET /api/products-列出所有产品GET /api/products/:id-通过评论获取产品详细信息GET /api/cart-获取购物车商品POST /api/cart-将商品添加到购物车PUT /api/cart/:id-更新项目数量DELETE /api/cart/:id-从购物车中删除商品
查伯特API(5000港)
POST /chat-向聊天机器人发送消息GET /health-健康检查
使用AI聊天机器人
- 点击聊天按钮(💬) 在右下角
- 问以下问题:
- “你们有什么产品?” - “显示笔记本电脑” - “无线鼠标的价格是多少?” - “将无线鼠标添加到我的购物车” - “我的车里有什么?”
聊天机器人使用AWS Bedrock Nova Pro来了解您的问题并帮助您购物。
项目结构
.
├── backend/ # Express.js API server
├── frontend/ # React application
├── chatbot/ # Python chatbot service
│ ├── tools/ # Backend integration tools
│ ├── agent.py # Strands Agent configuration
│ ├── server.py # Flask HTTP server
│ └── README.md # Detailed chatbot documentation
└── database/ # SQL schema reference