Skip to content

Space.Tab是一个现代化的Web应用程序,提供多种功能,包括用户认证、服务器管理、设备信息收集、天气查询、搜索引擎集成等功能。

License

Notifications You must be signed in to change notification settings

lingke-net/Space.Tab

Repository files navigation

pARPxN8.png

Space.Tab

Space.Tab是一个现代化的Web应用程序,提供多种功能,包括用户认证、服务器管理、设备信息收集、天气查询、搜索引擎集成等功能。

技术栈

  • 前端:Vue 3、Tailwind CSS、GSAP
  • 后端:Express.js、MySQL、Redis
  • 构建工具:Vite
  • 其他:JWT认证、Swagger API文档

wiki文档

pARPxN8.png

项目设置

pARPxN8.png

环境要求

  • Node.js (推荐v18+)
  • MySQL
  • Redis
  • PNPM (推荐v10+)

安装依赖

# 安装依赖
pnpm install

环境变量配置

  1. 复制环境变量示例文件作为基础
cp .env.example .env
  1. 编辑.env文件,填入你的实际配置信息:
    • 数据库连接信息(MySQL和Redis)
    • API密钥(高德地图、极验验证等)
    • JWT密钥
    • 其他应用配置

数据库初始化

  1. 确保MySQL服务已启动
  2. 创建数据库并导入初始数据
mysql -u your_username -p < sql/spacetab-data.sql

开发

启动开发服务器:

pnpm dev

应用将在 http://localhost:3001 (或环境变量中配置的端口) 上运行。

构建

pARPxN8.png

构建生产版本:

pnpm build

部署

标准部署

# 构建项目
pnpm build

# 启动生产服务器
pnpm start

Docker部署

# 使用生产环境配置启动Docker容器
pnpm docker

项目结构

  • src/client/ - 前端Vue应用
  • src/server/ - 后端Express服务器
  • sql/ - 数据库初始化脚本
  • public/ - 静态资源文件

环境变量说明

pARPxN8.png

项目使用了多种环境变量来配置不同的功能。请参考.env.example文件了解所有可用的配置选项。关键配置包括:

基础配置

  • NODE_ENV - 运行环境(development/production)
  • PORT - 服务器端口

数据库配置

  • MYSQL_HOST - MySQL主机地址
  • MYSQL_PORT - MySQL端口
  • MYSQL_USER - MySQL用户名
  • MYSQL_PASSWORD - MySQL密码
  • MYSQL_DATABASE - MySQL数据库名

Redis配置

  • REDIS_HOST - Redis主机地址
  • REDIS_PORT - Redis端口
  • REDIS_PASSWORD - Redis密码
  • REDIS_DATABASE - Redis数据库索引

认证配置

  • JWT_SECRET - JWT签名密钥
  • JWT_EXPIRES_IN - JWT过期时间

第三方服务配置

  • VITE_MAMP_KEY - 高德地图API密钥
  • VITE_GEETEST_CAPTCHA_ID - 极验验证ID
  • VITE_GEETEST_CAPTCHA_KEY - 极验验证密钥

安全注意事项

pARPxN8.png pARPxN8.png

  1. 环境变量文件

    • .env.env.* 文件包含敏感信息,已在.gitignore中配置为不上传
    • 永远不要将包含实际密钥的环境文件提交到版本控制系统
  2. 数据库凭证

    • 生产环境中使用强密码
    • 限制数据库用户权限
  3. API密钥

    • 定期轮换第三方服务的API密钥
    • 实施适当的访问控制和速率限制

贡献指南

pARPxN8.png

  1. Fork项目
  2. 创建功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 创建Pull Request

许可证

pARPxN8.png

本项目遵守 GPL-3.0 license 协议,在协议规范内,禁止用于商业用途

About

Space.Tab是一个现代化的Web应用程序,提供多种功能,包括用户认证、服务器管理、设备信息收集、天气查询、搜索引擎集成等功能。

Resources

License

Stars

Watchers

Forks