# taluo **Repository Path**: persist-art/taluo ## Basic Information - **Project Name**: taluo - **Description**: ai实现塔罗占卜 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-15 - **Last Updated**: 2025-11-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 塔罗牌占卜小程序 一个可以离线使用的专业塔罗牌占卜应用,提供完整的78张塔罗牌占卜服务。 ## 功能特点 ### 🎯 核心功能 - **完整牌组**: 包含78张塔罗牌(22张大阿卡纳 + 56张小阿卡纳) - **多种牌阵**: 单张牌、三张牌、爱情牌阵、事业牌阵、凯尔特十字等 - **专业解读**: 每张牌都有详细的正逆位含义解释 - **离线使用**: 完全支持离线模式,无需网络连接 ### 🔮 占卜体验 - **洗牌动画**: 真实的洗牌体验,增加神秘感 - **随机抽牌**: 智能随机算法,确保每次占卜的独特性 - **正逆位判定**: 50%概率自动判定牌的正逆位 - **进度追踪**: 清晰显示占卜进度和剩余牌数 ### 📱 PWA支持 - **安装应用**: 可安装为桌面或移动应用 - **离线缓存**: Service Worker技术确保离线可用 - **自动更新**: 支持应用自动更新功能 - **响应式设计**: 完美适配各种设备屏幕 ## 技术栈 - **前端框架**: React 18 + TypeScript - **状态管理**: Zustand - **样式方案**: Tailwind CSS - **构建工具**: Vite - **PWA支持**: Vite PWA Plugin + Workbox - **路由**: React Router v7 - **图标**: Lucide React ## 快速开始 ### 安装依赖 ```bash pnpm install ``` ### 开发模式 ```bash pnpm run dev ``` ### 构建项目 ```bash pnpm run build ``` ### 预览构建结果 ```bash pnpm run preview ``` ## 项目结构 ``` src/ ├── components/ # React组件 │ ├── TarotCardComponent.tsx # 塔罗牌显示组件 │ ├── TarotSpread.tsx # 牌阵布局组件 │ └── PWA.tsx # PWA提示组件 ├── pages/ # 页面组件 │ ├── HomePage.tsx # 首页 │ ├── ReadingPage.tsx # 占卜页面 │ └── InterpretationPage.tsx # 解读页面 ├── store/ # 状态管理 │ └── tarotStore.ts # 塔罗牌状态管理 ├── data/ # 数据文件 │ ├── tarotData.ts # 塔罗牌数据 │ └── spreadData.ts # 牌阵数据 ├── types/ # TypeScript类型定义 │ └── tarot.ts # 塔罗牌相关类型 └── service-worker.ts # Service Worker文件 ``` ## 使用说明 ### 1. 选择牌阵 在首页选择您想要的占卜类型: - 单张牌占卜:快速获得指引 - 三张牌牌阵:过去-现在-未来时间线 - 爱情牌阵:深入了解感情关系 - 事业牌阵:职业发展的指引 - 凯尔特十字:最全面的十张牌占卜 ### 2. 提出问题(可选) 可以输入您想询问的问题,也可以直接开始占卜。 ### 3. 洗牌抽牌 点击"开始洗牌"按钮,系统会自动进行洗牌动画。 ### 4. 逐张抽牌 按照牌阵位置逐一抽取塔罗牌,每张牌都会显示正逆位。 ### 5. 查看解读 占卜完成后,可以查看每张牌的详细解读和综合分析。 ## 塔罗牌数据 ### 大阿卡纳 (22张) 包含愚者、魔术师、女祭司、皇后、皇帝等22张主牌,每张牌都有完整的正逆位含义。 ### 小阿卡纳 (56张) 包含四个花色: - **圣杯**(Cups):情感、直觉、关系 - **星币**(Pentacles):物质、金钱、事业 - **宝剑**(Swords):思想、冲突、决策 - **权杖**(Wands):行动、创造力、激情 ## 离线功能 应用使用Service Worker技术实现完整的离线支持: - 预缓存所有静态资源 - 智能缓存策略 - 离线页面提示 - 自动更新机制 ## 安装为PWA ### 桌面端 1. 在支持的浏览器中打开应用 2. 点击地址栏右侧的安装按钮 3. 按照提示完成安装 ### 移动端 1. 在Safari或Chrome中打开应用 2. 点击分享按钮 3. 选择"添加到主屏幕" ## 开发说明 ### 添加新的牌阵 在`src/data/spreadData.ts`中添加新的牌阵配置: ```typescript { id: 'new-spread', name: '新牌阵名称', description: '牌阵描述', positions: [ { id: 'position-1', name: '位置名称', description: '位置描述', x: 50, // 横向位置百分比 y: 50 // 纵向位置百分比 } ] } ``` ### 修改塔罗牌数据 在`src/data/tarotData.ts`中修改或添加塔罗牌信息。 ### 自定义样式 使用Tailwind CSS进行样式定制,主要颜色方案: - 主色调:紫色系(purple, indigo) - 辅助色:蓝色系(blue, cyan) - 强调色:黄色系(yellow, amber) ## 许可证 MIT License ## 贡献 欢迎提交Issue和Pull Request来改进这个项目。 ## 联系方式 如有问题或建议,请通过以下方式联系: - 提交GitHub Issue - 发送邮件 --- 🔮 愿塔罗牌为您带来智慧和指引!