# DailyQuote
**Repository Path**: coldestbow30654/DailyQuote
## Basic Information
- **Project Name**: DailyQuote
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: AGPL-3.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-02-12
- **Last Updated**: 2026-02-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 每日一句 - DailyQuote 项目总览

一款跨平台名言警句分享与推送系统
[](https://www.gnu.org/licenses/agpl-3.0.html)



## 项目简介
「每日一句」是一款跨平台名言警句分享与推送系统,旨在为用户提供每日的智慧启迪和精神养料。系统采用前后端分离架构,后端使用PHP构建RESTful API服务,前端采用Electron框架开发跨平台桌面客户端,支持Windows、macOS、Linux三大主流操作系统。
本项目的核心价值在于打造一个轻量级、优雅的名言分享平台,用户不仅可以浏览每日精选的名言警句,还可以注册账户后提交自己喜欢的内容,与社区分享智慧。系统提供完善的用户认证机制、内容审核流程和管理员后台,确保平台内容的质量和安全性。
## 技术架构
本项目采用现代化的分层架构设计,将业务逻辑、数据存储和用户界面清晰分离,便于维护和扩展。
后端服务采用PHP 8.0+作为开发语言,利用其成熟的生态系统处理HTTP请求和业务逻辑。数据存储选用MySQL关系型数据库,使用PDO扩展进行数据库操作,确保数据访问的安全性和兼容性。API接口遵循RESTful设计规范,返回标准JSON格式数据,便于各类客户端集成。安全方面,系统集成了Cloudflare Turnstile人机验证,有效防止恶意攻击和自动化滥用。
前端桌面应用基于Electron 28框架开发,采用主进程与渲染进程分离的架构模式。主进程负责窗口管理、系统级功能集成和自动更新等底层操作;渲染进程运行Chromium浏览器引擎,呈现现代化的Web界面。Electron-Builder负责应用打包,支持一键生成各平台安装包,包括Windows的exe和portable格式、macOS的dmg和zip格式、Linux的AppImage、deb和snap格式。
## 项目结构
```
DailyQuote/
├── DailyQuoteWeb/ # 后端API服务(PHP)
│ ├── admin.php # 管理员后台界面
│ ├── api.php # 核心API接口
│ ├── auth.php # 用户认证模块
│ ├── config.php # 配置文件
│ ├── create_db.php # 数据库初始化脚本
│ ├── db.php # 数据库操作类
│ ├── db_init.php # 数据库表结构初始化
│ ├── index.php # 用户前端界面
│ ├── login.php # 用户登录页面
│ ├── register.php # 用户注册页面
│ ├── security.php # 安全防护模块
│ ├── security_config.php # 安全配置
│ └── user_submit.php # 用户内容提交
├── DailyQuoteApp/ # 桌面客户端(Electron)
│ ├── api.js # API调用封装
│ ├── auth-store.js # 认证状态存储
│ ├── auto-updater.js # 自动更新模块
│ ├── autologin.js # 自动登录模块
│ ├── crypto.js # 加密工具
│ ├── index.html # 主界面HTML
│ ├── logger.js # 日志模块
│ ├── main.js # 主进程入口
│ ├── package.json # 项目配置
│ ├── preload.js # 预加载脚本
│ ├── quote-scheduler.js # 定时任务模块
│ ├── renderer.js # 渲染进程脚本
│ ├── store.js # 应用状态存储
│ ├── styles.css # 样式文件
│ ├── USER_MANUAL.md # 用户手册
│ ├── assets/ # 资源文件目录
│ │ └── icons/ # 应用图标
│ ├── user/ # 用户数据目录
│ │ ├── auth.json # 认证信息
│ │ ├── autologin.json # 自动登录配置
│ │ ├── encryption.key # 加密密钥
│ │ └── user-settings.json # 用户设置
│ └── dist/ # 构建输出目录
├── .gitignore # Git忽略配置
└── README.md # 本文档
```
## 核心功能模块
### 后端服务功能
后端API服务提供完整的名言管理和用户认证功能。名言管理模块支持按日期获取每日精选、随机获取名言、按ID查询特定名言以及获取全部名言列表。每条名言记录包含名言内容、作者、分类、日期和可选的背景音乐链接等字段。系统默认按分类存储名言,主要分类包括励志、智慧、人生、情感、职场等多个领域。
用户认证模块实现了安全的账户注册和登录机制。注册时系统验证用户名长度和密码强度,并通过Cloudflare Turnstile进行人机验证。登录成功后服务端生成JWT令牌,令牌包含用户ID、用户名、角色和过期时间等信息,有效期默认为7天。后续请求通过Authorization请求头携带令牌进行身份验证。
用户提交模块允许已登录用户向平台贡献名言内容。系统对每日提交数量进行限制,普通用户每天最多提交3条新内容,超过限制需等待次日重置。提交的名言默认处于待审核状态,审核通过后才会出现在每日推荐列表中。管理员可以查看所有待审核内容,进行通过或拒绝操作。
管理员后台提供完整的系统管理功能,包括用户管理、内容审核、统计数据查看等。管理员界面采用响应式设计,支持在各种设备上访问。所有管理操作都会记录审计日志,便于追溯和监控。
### 桌面客户端功能
桌面客户端专注于提供优雅的名言展示和便捷的用户体验。主界面采用浅绿色主题设计,给人清新舒适的视觉感受。应用启动时自动获取当日精选名言,并在设定的提醒时间发送系统通知,帮助用户开启美好的一天。
定时提醒功能允许用户自定义每日的名言获取时间。应用内部维护一个调度器,在指定时间触发API请求获取新内容,并通过操作系统的通知API显示提示信息。用户可以在设置中调整提醒时间、开启或关闭通知功能。
自动登录功能提升了用户使用便利性。用户首次登录时可选择保存凭据,应用将凭据加密存储在本地安全位置,下次启动时自动完成登录过程。如果自动登录失败,应用会清除已保存的凭据并提示用户手动登录。
自动更新功能确保用户始终使用最新版本的应用。应用启动时检查远程更新服务器,如有新版本则提示用户下载更新。支持全量更新和增量更新两种模式,更新过程后台下载,不影响用户正常使用。
## 快速开始
### 环境要求
运行本项目需要以下软件环境。后端服务要求PHP 8.0或更高版本,启用PDO和JSON扩展,并连接MySQL 5.7或更高版本的数据库服务器。桌面客户端要求Node.js 18.0或更高版本,以及npm 9.0或更高版本进行开发和构建。
### 后端服务部署
将DailyQuoteWeb目录部署到支持PHP的Web服务器,如Apache或Nginx。创建MySQL数据库,执行db_init.php脚本初始化数据表结构。根据实际环境修改config.php中的数据库连接凭据和管理员账户信息。确保Web服务器配置支持URL重写,以便API路由正常工作。
### 桌面客户端运行
进入DailyQuoteApp目录,执行npm install安装所有Node.js依赖。安装完成后执行npm start启动开发模式的应用。开发过程中修改代码后应用会自动重新加载。如需构建生产版本,执行npm run build命令,生成的安装包将保存在dist目录下。
## 文档导航
本项目包含以下专项文档,各文档位于对应项目的目录内:
Gitee链接(推荐)
- **[DailyQuoteWeb API文档](https://gitee.com/coldestbow30654/DailyQuoteWeb/blob/main/README.md)**:详细说明所有API接口的请求方式、参数规范、响应格式和错误代码,包含完整的调用示例和集成指南。
- **[DailyQuoteApp开发文档](https://gitee.com/coldestbow30654/DailyQuoteApp/blob/main/README.md)**:介绍桌面客户端的开发环境搭建、项目架构说明、核心模块解析、构建流程和测试指南。
---
GitHub链接
- **[DailyQuoteWeb API文档](https://github.com/COLDESTBOW30654/DailyQuoteWeb/blob/main/README.md)**:详细说明所有API接口的请求方式、参数规范、响应格式和错误代码,包含完整的调用示例和集成指南。
- **[DailyQuoteApp开发文档](https://github.com/COLDESTBOW30654/DailyQuoteApp/blob/main/README.md)**:介绍桌面客户端的开发环境搭建、项目架构说明、核心模块解析、构建流程和测试指南。
## 开发规范
本项目遵循以下开发规范以确保代码质量和一致性。PHP代码遵循PSR-12编码规范,使用PDO进行数据库操作,采用预处理语句防止SQL注入。JavaScript代码遵循ESLint默认规范,主进程和渲染进程代码明确分离,通过IPC机制安全通信。所有API接口返回统一的JSON响应格式,包含success状态码、数据负载和错误信息。
## 许可证
本项目采用AGPL v3许可证开源,允许自由使用、修改和分发代码库。详情请参阅项目根目录的LICENSE文件。
---
用智慧点亮每一天,让名言激励每一次前行