# Nekoya **Repository Path**: MeowMeowZi/nekoya ## Basic Information - **Project Name**: Nekoya - **Description**: 一个基于 DeepSeek API 的 AI 聊天应用,拥有温馨的深夜主题界面。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-11 - **Last Updated**: 2026-02-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Nekoya 猫屋 > 深夜的猫屋,灯永远亮着 模块化个人工具箱,深夜日式猫屋主题。插件架构自动发现模块,开箱即用。 ## 功能模块 | 模块 | 说明 | |------|------| | 💬 深夜闲聊 | AI 聊天,多猫咪人设角色,流式对话,围炉夜话聊天室 | | 📝 便签墙 | 可拖拽便签,多色彩,AI 润色 | | 🐾 猫爪计划 | 待办清单 + 番茄钟,专注统计 | | 🎯 命运转盘 | 自定义转盘,AI 一键生成,历史记录 | | 🌤️ 窗外天气 | 多城市天气,AI 穿衣建议,TTS 语音播报 | | 💬 意见反馈 | 反馈投票,管理员回复,AI 代写 | ## 技术栈 - **后端**:Python / FastAPI / Uvicorn / aiosqlite - **AI**:DeepSeek / Gemini(可切换) + Edge TTS 语音合成 - **前端**:原生 HTML / CSS / JavaScript - **数据库**:SQLite(WAL 模式) - **认证**:JWT + bcrypt,邀请码注册 ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 配置 在项目根目录创建 `config.py`: ```python # 认证 JWT_SECRET = "your-jwt-secret" REQUIRE_INVITE = False # 是否需要邀请码注册 # AI 服务 AI_PROVIDER = "deepseek" # 或 "gemini" DEEPSEEK_API_KEY = "your-api-key" DEEPSEEK_MODEL = "deepseek-chat" DEEPSEEK_BASE_URL = "https://api.deepseek.com" # 管理员 ADMIN_USERS = ["your-username"] # 天气(可选) QWEATHER_API_KEY = "your-key" QWEATHER_API_HOST = "https://devapi.qweather.com" ``` ### 3. 启动 **Windows:** ```bash start.bat ``` **Linux / macOS:** ```bash chmod +x start.sh ./start.sh ``` **或者直接运行:** ```bash python -m uvicorn server:app --host 0.0.0.0 --port 8501 --reload ``` 启动后访问 http://localhost:8501 ### 4. 生成邀请码(可选) ```bash python gen_invite.py # 生成 1 个 python gen_invite.py -n 5 # 生成 5 个 python gen_invite.py --list # 查看所有邀请码 ``` ## 项目结构 ``` nekoya/ ├── server.py # FastAPI 主服务 ├── auth.py # 认证(JWT / bcrypt) ├── db.py # SQLite 数据库 + 迁移 ├── ai_service.py # 共享 AI 服务(流式/非流式/TTS) ├── module_loader.py # 模块自动发现与注册 ├── config.py # 配置文件(需自行创建) ├── gen_invite.py # 邀请码生成工具 ├── requirements.txt # Python 依赖 ├── start.bat / start.sh # 启动脚本 │ ├── modules/ # 功能模块(插件式) │ ├── ai-chat/ # 深夜闲聊 │ ├── memo/ # 便签墙 │ ├── todo/ # 猫爪计划 │ ├── wheel/ # 命运转盘 │ ├── weather/ # 窗外天气 │ └── feedback/ # 意见反馈 │ ├── admin/ # 管理后台 ├── static/ # 全局前端资源 ├── data/ # SQLite 数据库(自动生成) └── docs/ # 模块文档与设计文档 ``` ### 模块结构 添加新模块只需在 `modules/` 下创建目录: ``` modules/{module-id}/ ├── manifest.json # 必须:id / name / icon / description / version / status ├── api.py # 可选:后端路由(导出 router) ├── index.html # 可选:模块页面 └── {module-id}.css/.js # 可选:模块样式和逻辑 ``` ## License MIT