科学工具
科学工具让世界更美好
让世界更美好

PMS生活管理工具,支持待办事项、密码存储、账目统计、照片管理、旅行计划等

PMS是一个超实用的开源生活管理工具,能帮你一站式搞定待办事项、密码存储、账目统计、照片管理、旅行计划等,能备份联系人和设置日程提醒。PMS用 PHP 打造,几分钟就能部署完毕,适合技术爱好者和追求生活高效的小伙伴。

PMS包含多个实用的功能模块,能覆盖个人生活和工作中的多种数据管理需求:

Todo/Goals:跟踪个人目标。可以用待办清单跟踪目标进度,也能使用支付子模块关注为某件事筹集的资金数额。

Notes:向指定类别添加任何个人笔记。可以在这里保存任何需要的小信息,比如电话里的快速笔记、从不同页面收集的信息,或者之后想查看的链接。

Contacts:如果你有很多电话联系人、电子邮件等,想整理或备份以防手机丢失,这个简单的模块可以帮你管理个人联系人。

Passwords:密码太多难以管理时,这个模块能将密码加密保存在数据库中,前端有复制按钮可以获取原始密码。

Achievements:想记录做过的很棒的事情,就可以用这个模块。

Schedules:用于跟踪任何需要定期做的事情,比如汽车换油、付款、就诊等。添加到日程组的数据会显示在仪表盘和通知铃中。

Issues:可以在这里跟踪任何正在进行或待解决的事情,这些事情不一定需要时刻关注,但将来可能需要回顾,还能添加相关联系记录和进展。

Travels:有想去的地方但没有具体计划?可以添加到这个模块,附上谷歌地图链接和图片,方便日后查看,图片还能提醒自己为什么对这个地方感兴趣。

Payments:不知道在食物、旅行、家庭购物上花了多少钱?把每次购物详情添加到列表,它会进行计算并给出当月汇总。还能通过产品价格子模块记录特定产品价格,通过欠款子模块记录谁欠你钱或你欠谁钱,通过账单子模块记录特定支出。

Shopping:计划将来买东西?添加到列表中,之后可以查看,判断是否当下就能购买。

Job:下班后子模块可以记录工作中的加班时间,还能为特定目标分配时间;假期子模块可以跟踪年度假期已使用的天数。

Images:可以以 masonry 画廊的形式整理照片、扫描件、下载的图片。点击图片缩略图会打开灯箱画廊,可以重命名、删除或下载图片,还能创建任意数量的画廊(文件夹)。

Files:这个模块上传的文件以数据表格的形式显示,能看到文件的扩展名、文件类型图标(如果有定义)、文件大小。可以从界面重命名、下载和删除文件。

Video:下载的小视频或手机录制的视频可以存到这个模块,它支持大多数流行的网络视频格式。

Reports:包含从数据库中现有数据生成的只读报告。

PMS安装

获取项目

注意:务必在两端使用最新版本(发布/标签),这样才能保证所有功能正常运行。

• 克隆后端项目

使用ssh:git clone [email protected]:Volmarg/personal-management-system.git

• 克隆前端项目

使用ssh:git clone [email protected]:Volmarg/personal-management-system-front.git

可以直接在这里下载源代码:

• 后端:github.com/Volmarg/personal-management-system/releases

• 前端

需要注意的是,后续指南假设使用了git clone,如果没有,可能需要自行解决潜在的升级问题。

配置项目

如果计划在同一主机/机器上运行后端和前端,不需要进行额外配置。

如果要在不同机器上托管项目,则必须调整以下配置:

前端的.env.production文件中,dotenv部分的VITE_BACKEND_BASE_URL=需要进行设置。

如果修改了前端配置,必须重新构建资源,这意味着需要安装所有必要的开发依赖,并配置环境以进行正确的打包。

启动容器

在两种情况下,都需要从项目根目录执行以下命令!

• 前端:docker compose -f docker-compose-prod.yaml up -d

• 后端(标准树莓派arm/v7):docker compose -f docker-compose.yml up -d

后端容器首次启动需要下载并启动所有组件,大概需要1-3分钟,请耐心等待。

首次使用

注册

首次打开项目时,需要创建用户。在登录屏幕点击“Register”,填写表单,之后就可以使用提供的电子邮件地址登录。

需要注意的是,正如项目名称中的“Personal”所示,只能注册一个用户。该项目所有测试都基于单个用户。虽然可以通过修改安全逻辑注册更多用户,但这并非设计初衷。数据库中添加的记录不与用户/用户ID绑定,无论哪个用户登录,所有内容都能正常显示和使用。

密码重置/恢复

目前没有实现密码重置/恢复的图形界面功能。不过可以手动更改密码,步骤如下:

1、进入后端容器:docker exec -it pms-php-fpm bash

2、输入:bin/console security:hash-password

3、输入新密码(输入时不会显示),然后按回车键

4、复制“Password hash”,例如:$2y$13$0pgvBjgCi4LWV.euSrDyzurZPL825vrgBL5e6TNijFqEXOlNPhfEa

5、找到数据库中的app_user

6、找到对应的用户,将“password”字段替换为之前复制的“Password hash”

7、之后就可以用新密码登录了