personal-management-system

VolmargMIT活跃维护

一套自托管的个人数据管理 Web 应用,把笔记、密码、财务、联系人等日常信息集中到一个仪表盘里管理,用 Docker 就能部署。

Your web application for managing personal data.

v2.1.0发布于 2026-09-27 16:40 UTC4,194star349fork同步于 2026-11-10 17:40 UTC

怎么上手

由 README 提炼,执行前请确认
README 未给出安装命令,仅指向官方文档:https://volmarg.github.io/docs/getting-started/installation.html
硬件要求按 README 说明

README 未说明具体硬件要求,仅提到目标是在树莓派或终端上 24/7 运行于家庭内网

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

自托管的个人数据管理后端,把待办、密码、财务、文件等分散信息集中到一个 Web 应用里

一套自托管的个人数据管理 Web 应用,把笔记、密码、财务、联系人等日常信息集中到一个仪表盘里管理,用 Docker 就能部署。

核心能力

  • 按模块管理待办、笔记、联系人、密码等个人数据
  • 密码模块加密存储,前端可一键复制原文
  • 支付模块自动汇总月度开销并记录欠款
  • 图片以瀑布流画廊展示,文件以表格管理
  • 日程分组数据展示在仪表盘和通知铃中

容易踩的坑

本仓库只是后端,需另外部署配套前端仓库 personal-management-system-front;安装步骤未写在 README 中,必须查阅官方文档;作者明确表示不保证提供支持

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2.1.0
  1. v2.1.0Version 2.1.0最新正式版2026-09-27 · 2026-09-27 16:40 UTC

    TLDR

    New Health module and bunch of fixes.

    Changes

    • 6bbeb021 📝 Add health module info to readme
    • 1b633b51 🐛 Rename doctor/illness on soft-delete, fixes unique constraint
    • 1b328e29 ✨ Health fixture
    • fdc0e9f8 ♻ Add info about jwt auth success call
    • 101442ac 🐛 Lock mechanism broken
    • da8d93d9 ♻ Return doctor/illness created record id
    • d4046fd2 🐛 Catch non unique doctor/illness
    • 6855d8c8 🐛 Allow illness without appointments
    • 4f2cb3ab 🐛 Allow empty doc contats
    • c5d12959 ✨ Handle doctor contacts
    • 11434a48 🐛 Doctor contacts missing default value
    • c138c6db ♻ Response serializer into trait
    • 7cb6d91a 🍻 Forgot doctor contacts dto
    • 658bb90d ✨ Add doctor contacts
    • 0e371360 🐛 SoftDelete appointments for removed illness
    • a0443570 🐛 Explicitly check for filepath starting with string
    • fb9d3679 🐛 Controll files accessed via get-file
    • 8a1c489c 🐛 Send missing front data for illness appointments
    • aae52a0c ♻ Reduce fields needed for doc appointment create/update
    • b0bdd5bb 🐛 Unlink storageFile2Module when removing file
    • cc555777 ♻ Appointment date H:i:s
    • 86d3c269 🐛 Dont return deleted appointments
    • 46203117 ♻ Rework the code for handling the appointment files properly
    • 16260bc8 🐛 DocAppointment circular ref crashing getAll
    • 033af33a ♻ Revert storage file paginated data (filter), add (all) call
    • 8ac0becf 🔐 Add health module perms
    • dd723e91 🐛 IllnessAction:getAll crash
    • 2bef7645 ✨ Base code for doc appointment action
    • c1837de8 🍻 Missing module defined in service
    • d4df3f0f ✨ Prepare very base code for doctor/ilness action
    • 71a492dc 🧑‍💻pencode entity soft-deletable
    • 54ebb2d5 ♻ Make health entities soft-deletable
    • 74a40d42 🧑‍💻xtend opencode entity rule
    • 731c1c9f 🗃 Migration for health entities
    • 5b1151b5 🐛 Missing unique constraint import
    • bb244c27 ✨ Add base code for health entities
    • 9a2d7306 🧑‍💻dd opencode entity rule
    • 2cd9b3c1 🐛 StorageFile polymorph not working for new entities
    • bf764317 🐛 StorageFile hydration fails if no entity is related
    • b66118fe ✨ Entrypoint php: register storage files in db
    • e5cd4db1 ✨ Add opencode config
    • 1b5d799b ✨ Add polymorphic StorageFile2Module
    • bcbb1861 🐛 Expecting storage file id in getDirNodeFiles crashes
    • 6b20c9f3 ♻ Return file id and path in file data for storage
    • 77a80984 ✨ Update storage file on dir rename
    • 3c71a028 🐛 Deny renaming storage base upload dir
    • 3fa67b3d ✨ Update storage file entity path on file rename
    • 1e5ab033 ✨ Update storage file path on dir copy/move logic
    • 9e634886 ♻ Reduce code for storage filter and files to entities
    • c6916608 ✨ Allow uploading CSV in monthly payment import
    • 13a3b868 ♻ Update storageFile path when moving from module view
    • bd181af4 🐛 File path to entity, wrong file name for file without ext
    • a3c6b3e3 🐛 Upload file into entity, wrong files paths
    • 0b0c655c ♻ Remove StorageFileEntity on front removal
    • 20af38b9 ♻ Storage uploaded file into entity
    • 589ec3c1 ✨ Add command for creating entities from storage uploaded files
    • 339cd883 ✨ Add storage_file table
    • 0767c0ca ♻ StoreageFile filter, support search by query
    • 0e123eac ♻ Route for getting all files via filter
    • 3710cc90 ⏪ Revert github tpl for now - not working
    • 00ec5fe0 📝 Another attempt adding tpl
    • a469df35 📝 Yet another attempt to make issue tpl
    • 27129f5c 📝 Further changes to make default issue tpl
    • 074b9455 📝 Make default github issue tpl
    • b4a31505 Update issue templates
    • f9ad7ef0 🐛 Token not refreshed on activity based refresh
    • 8bef257f :technologist: DevAction return class::func
  2. v2.0.4Version 2.0.42026-04-25 · 2026-04-25 10:05 UTC
    查看更新说明

    Changes

    • 180b104d :sparkles: Allow assigning import profile to filter rule
    • 033d6b46 :recycle: Add description field to filter rules
    • 55cc14fe :bug: Migration for profiles/filters crashing
    • 65b56547 :recycle: Add relation between import rule && profile
    • 6641f182 :technologist: Define dev debug route for backend
    • 2c7a6336 :recycle: Cleanup JwtAuthenticationDisabledAttribute
    • cb5876ac :recycle: Contact type: allow url for image path, adjust
    • 5e0e9e6f :bug: Contact type never updated
    • 16621e71 :bug: In query jwt token never worked
    • 871cbb65 :arrow_up: Profiler to 6.1.x
    • 55dd6bfe :bug: Inaccessible profiler route
    • 2522c289 :lock: Validate public folder get path
    • c6bbff00 :lock: main firewall inactive
    • 7ab6c728 :sparkles: Add import profile entity + crud
    • d98c175e :sparkles: Support monthly import partial filter rule
    • 12f9d6e3 :sparkles: Monthly import filter rules structure
    • d40e442c :technologist: Split & clean OnKernelRequestListener
  3. v2.0.3Version 2.0.32026-01-31 · 2026-01-31 09:14 UTC
    查看更新说明

    Changes

    • 04e4d7f7 :recycle: Deny sending storage module tree structure if its locked
    • 31dc4c2b :recycle: Deny storage access if storage-based modules are locked
    • 82c03619 :bug: Assign storage function module annotations
    • a20842c0 :recycle: Dont show storage files in search for locked module
    • 159599d3 :bug: Search result: soft deleted notes got listed
    • e3476fe1 :recycle: Do not show notes search results for locked mofule
    • 5cfac311 :bug: Typo on php.ini apc conf
    • ddd6cf06 :sparkles: Allow (un)locking method for module
  4. v2.0.3bVersion 2.0.3-beta2026-01-13 · 2026-01-13 13:29 UTC
    查看更新说明

    Info

    • v2.0.3 aims to bring back module locking functionallity

    It's generally there, but unfinished.

    Changes

    • f330f3b6 :sparkles: Show dashboard widget lock state
    • af720a7c :recycle: Show widget settings lock state based on module lock
    • ef1d4ea4 :recycle: Return dashboard data only if module is acessible
    • e0c84859 :recycle: Deny modules locking on demo
    • 3ce24a4a :lock: Hide modules locking behind lock
    • 920e59fb :recycle: Send proper lock/right state do show menu lock on front
    • 6d38fce2 :bug: User rights in jwt not refreshing properly for module locks
    • 83b55fe9 :sparkles: Send user rights in jwt to front
    • 3d98e249 :recycle: Rename module reporsts name const
    • c42fcc8b :sparkles: Handle module lock setting
  5. v2.0.2Version 2.0.22025-11-27 · 2025-11-27 13:39 UTC
    查看更新说明

    Mostly legacy code cleanup - pretty much all the mess should be cleaned up by now.

    Contains some minor fixes here & there,

    Changes

    • 911afd38 :fire: Wipe leftover services logic, from ctrl cleanup
    • 9cf59068 :recycle: Cleanup remaining legacy trans.
    • 2ca91a9f :bug: Wrong trans ref
    • 49ad3634 :fire: Legacy FileTagger
    • 145df4e3 :recycle: Further translations cleanup && merge
    • a66b9066 :recycle: Further translations cleanup
    • e9779e16 :fire: Wipe part of legacy translations
    • 3d5447fa :recycle: ModuleAnnotation to ModuleAttribute
    • 6e83cc8b :recycle: Replace AnnotationReader with AttributeReader
    • 8025c62f :bug: MonthlyPayments description trim
    • 692d8322 :fire: Wipe last legacy Controller
    • 04697104 :recycle: Get rid of ConfigLoaders core controller
    • 1a844bb4 :recycle: Env and Utils into service
    • 3b57f685 :recycle: Settings Controllers into services
    • 1472a212 :fire: Wipe some legacy controllers
    • 24b740f6 :recycle: ModulesController into ModulesService
    • 589b25b9 :recycle: Wipe useless controllers. Move some ctrl to service
    • 66b05297 :recycle: Wipe some useless controllers, use repo logic
    • fef3da69 :fire: Wipe obsolete legacy controllers
    • 5c036eb8 :recycle: LockedResource/Security-Controller into service
    • 25fd20f8 :recycle: Actions tiny cleanup
    • ab7e813e :recycle: Move assets around
    • 4b5a2d8a :fire: Wipe commands legacy code + legacy miniatures comman
    • 33ebd277 :fire: Further wipe controllers dead code
    • 2fbc1836 :fire: cleanup some controllers legacy logic
    • 39a66246 :recycle: Wipe useless dtos, rename some other dtos
    • df2152c6 :fire: Wipe entities legacy stuff
    • 3a2e7294 :fire: Wipe some useless entity interfaces
    • 0ab7bd9b :fire: Cleanup repos code
    • 0d419d3a :fire: Wipe some legacy dead code from repos
    • 5d79c311 :fire: Further wipe dead code
    • 0277deda :fire: Wipe dead code from files services
    • a833b3cc :fire: Wipe bunch of old files related logic
    • 154cf7d2 :bug: Recurring payments day of month not validated
    • e7dc6855 :bug: Job holidays pool not validated on update
    • 8756c438 :recycle: ValidationVo into ValidationDto
    • 57b78322 :sparkles: Add schedules reminder sending to pi cron.d
    • d3c717cc :bug: Reminders command not marking reminder as handled
    • 40adade1 :fire: Wipe useless code in multiple files
    • 04bb5da3 :fire: Wipe legacy ConfigLoaderSession
    • 305f526d :fire: Wipe legacy logger
    • 8171a921 :fire: Remove legacy Translator
    • 6b8d64cc :fire: Wipe legacy App
    • 4022c443 :fire: Wipe logger calls through legacy app
    • 1b0f9be9 :fire: Wipe translator calls in legacy app
    • 2b1cb831 :sparkles: Handle sending reminders over discord webhook
    • 05436eae :technologist: Script: git diff between tags
    • 8a08fb61 :fire: Wipe ConfigLoaders calls through legacy app
    • 2743cf7d :sparkles: Store notification settings

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Check the official documentation: here

    Check the official documentation: here

    Go here: here