Wallos:开源自托管财务管理应用 | 告别复杂电子表格,掌控你的财务未来

图片[1]-Wallos:开源自托管财务管理应用 | 告别复杂电子表格,掌控你的财务未来-🎉数字奇遇🎉

文章目录:

  1. Wallos 简介
  2. Wallos 功能特性
  3. 在线演示
  4. 快速上手
  5. 环境要求
  6. 安装指南:裸机与 Docker
  7. 升级指南:裸机与 Docker
  8. Docker Compose 用法
  9. 界面截图
  10. OIDC 支持
  11. API 文档
  12. 贡献指南
  13. 贡献者名单
  14. 翻译指南
  15. 许可证说明
  16. 相关链接

1. Wallos 简介

Wallos 是一款功能强大、开源且可自托管的 Web 应用程序,旨在帮助用户轻松管理个人财务。它致力于取代复杂的电子表格和昂贵的财务软件,简化费用跟踪流程,帮助用户更好地掌控自己的财务状况。通过 Wallos,你可以告别繁琐的手动记录,享受更清晰、更高效的财务管理体验。

2. Wallos 功能特性

Wallos 提供了丰富的功能,满足你财务管理的各种需求:

  • 订阅管理: 轻松跟踪你的定期订阅和服务,确保不会错过任何付款截止日期。你可以集中管理所有订阅信息,包括订阅名称、付款金额、账单周期、下次付款日期等。Wallos 会提醒你即将到期的订阅,避免因忘记续费而造成损失。
  • 类别管理: 将你的支出组织成可自定义的类别,从而深入了解你的消费习惯。你可以根据自己的需求创建各种类别,例如餐饮、交通、娱乐、购物、房租等。通过分析每个类别的支出情况,你可以清晰地了解钱都花在了哪里,从而更好地控制预算。
  • 多币种支持: Wallos 支持多种货币,允许你使用你选择的货币管理你的财务。无论你是在国内还是国外消费,都可以方便地记录和跟踪不同货币的支出。
  • 货币转换: Wallos 集成了 Fixer API,可以获取最新的汇率,让你以主要货币查看所有订阅的费用。这样,即使你的订阅是以不同的货币支付的,你也可以清楚地了解总支出情况。
  • 数据隐私: 作为一款自托管应用程序,Wallos 确保你的财务数据安全地保存在你自己的服务器上,无需担心数据泄露的风险。你可以完全掌控自己的数据,无需信任第三方机构。
  • 高度自定义: Wallos 允许你自定义类别、货币、主题和其他显示选项,以满足你的个性化需求。你可以根据自己的喜好调整应用程序的外观和功能,打造专属的财务管理工具。
  • 灵活的排序选项: Wallos 允许你从不同的角度查看你的订阅,例如按价格、日期、类别等排序,帮助你更好地分析和管理订阅。
  • Logo 搜索: 如果你没有订阅服务的 Logo,Wallos 可以自动在网上搜索并添加 Logo,让你的界面更美观、更易于识别。
  • 移动视图: Wallos 具有良好的移动端适配性,让你随时随地管理你的财务。
  • 统计功能: Wallos 提供各种统计图表,帮助你更直观地了解你的消费情况,例如支出趋势、类别占比等。
  • 通知功能: Wallos 支持多种通知方式,包括电子邮件、Discord、Pushover、Telegram、Gotify 和 Webhooks。你可以设置接收即将到期付款的通知,避免逾期。
  • 多语言支持: Wallos 支持多种语言,方便不同国家和地区的用户使用。
  • OIDC 认证: Wallos 支持 OIDC (OpenID Connect) 认证,可以使用 OAuth 协议与支持的身份提供商集成,实现单点登录。
  • AI 推荐: Wallos 集成了 ChatGPT、Gemini 或本地 Ollama,提供 AI 推荐功能,帮助你更好地管理财务。

3. 在线演示

如果你想体验 Wallos 的功能,可以访问 https://demo.wallosapp.com 查看在线演示。演示数据库每 2 小时重置一次。

演示账号:

  • 用户名:demo
  • 密码:demo

4. 快速上手

以下是在你的服务器上运行 Wallos 的步骤。

5. 环境要求

  • 裸机安装:
    • 运行 PHP 8.3 的 Nginx 或 Apache Web 服务器,并启用以下模块:curl、dom、gd、imagick、intl、openssl、sqlite3、zip、mbstring、fpm。
  • Docker 安装:
    • Docker 环境

6. 安装指南:裸机与 Docker

  • 裸机安装:
    1. 下载或克隆 Wallos 代码库,并将文件移动到你的 Web 根目录(通常是 /var/www/html)。
    2. 将 /db/wallos.empty.db 重命名为 /db/wallos.db
    3. 在浏览器中运行 http://domain.example/endpoints/db/migrate.php
    4. 使用 crontab -e 命令将以下脚本添加到你的 cronjobs 中:
    0 1 * * * php /var/www/html/endpoints/cronjobs/updatenextpayment.php >> /var/log/cron/updatenextpayment.log 2>&1
    0 2 * * * php /var/www/html/endpoints/cronjobs/updateexchange.php >> /var/log/cron/updateexchange.log 2>&1
    0 8 * * * php /var/www/html/endpoints/cronjobs/sendcancellationnotifications.php >> /var/log/cron/sendcancellationnotifications.log 2>&1
    0 9 * * * php /var/www/html/endpoints/cronjobs/sendnotifications.php >> /var/log/cron/sendnotifications.log 2>&1
    */2 * * * * php /var/www/html/endpoints/cronjobs/sendverificationemails.php >> /var/log/cron/sendverificationemail.log 2>&1
    */2 * * * * php /var/www/html/endpoints/cronjobs/sendresetpasswordemails.php >> /var/log/cron/sendresetpasswordemails.log 2>&1
    0 */6 * * * php /var/www/html/endpoints/cronjobs/checkforupdates.php >> /var/log/cron/checkforupdates.log 2>&1
    30 1 * * 1 php /var/www/html/endpoints/cronjobs/storetotalyearlycost.php >> /var/log/cron/storetotalyearlycost.log 2>&1
    

    如果你的 Web 根目录不是 /var/www/html/,请相应地调整 cronjobs 中的路径。

  • Docker 安装:
    docker run -d --name wallos \
    -v /path/to/config/wallos/db:/var/www/html/db \
    -v /path/to/config/wallos/logos:/var/www/html/images/uploads/logos \
    -e TZ=Europe/Berlin \
    -p 8282:80 \
    --restart unless-stopped \
    bellamy/wallos:latest
    

    禁用健康检查(可选,例如,对于 Docker <25 或更快的启动报告):

    docker run -d --name wallos \
    -v /path/to/config/wallos/db:/var/www/html/db \
    -v /path/to/config/wallos/logos:/var/www/html/images/uploads/logos \
    -e TZ=Europe/Berlin \
    -p 8282:80 \
    --restart unless-stopped \
    --health-cmd=NONE \
    bellamy/wallos:latest
    
  • Docker Compose:
    services:
      wallos:
        container_name: wallos
        image: bellamy/wallos:latest
        ports:
          - "8282:80/tcp"
        environment:
          TZ: 'America/Toronto'
        volumes:
          - './db:/var/www/html/db'
          - './logos:/var/www/html/images/uploads/logos'
        restart: unless-stopped
    

    禁用健康检查(可选,例如,对于 Docker <25 或更快的启动报告):

    services:
      wallos:
        container_name: wallos
        image: bellamy/wallos:latest
        ports:
          - "8282:80/tcp"
        environment:
          TZ: 'America/Toronto'
        volumes:
          - './db:/var/www/html/db'
          - './logos:/var/www/html/images/uploads/logos'
        restart: unless-stopped
        healthcheck:
          test: ["NONE"]
    

7. 升级指南:裸机与 Docker

  • 裸机升级:
    1. 重新下载代码库,并将文件移动到正确的文件夹,或者执行 git pull(如果你之前使用 git clone)。
    2. 检查环境要求,并安装/启用任何缺失的模块。
    3. 运行 http://domain.example/endpoints/db/migrate.php
  • Docker 升级:
    • 重新拉取最新的 Docker 镜像并重新启动容器。

8. Docker Compose 用法

使用 Docker Compose 可以更方便地管理 Wallos 容器。你可以使用 docker-compose up -d 命令启动容器,使用 docker-compose down 命令停止容器。

9. 界面截图

(此处应包含 Wallos 应用程序的界面截图,展示其主要功能和美观的界面设计。)

10. OIDC 支持

Wallos 支持 OIDC (OpenID Connect) 认证,可以在管理页面启用。你可以使用支持 OAuth 的身份提供商进行身份验证。

11. API 文档

Wallos 提供了一个全面的 API,允许你以编程方式与应用程序交互。API 文档可在 https://api.wallosapp.com/ 找到。

12. 贡献指南

欢迎提交 Pull Requests,修复 Bug 和添加新功能。请随时提交 Issues,报告 Bug 或提出功能请求。Bug 修复将优先处理。期待与你合作,共同改进 Wallos 项目。

13. 贡献者名单

(此处应包含 Wallos 项目的贡献者名单,感谢他们的付出。)

14. 翻译指南

如果你想贡献 Wallos 的翻译:

  1. 将你的语言代码添加到 includes/i18n/languages.php 文件中,格式为 "en" => ["name" => "English", "dir" => "ltr"],。请使用原始语言名称,而不是英语翻译。
  2. 复制 includes/i18n/en.php 文件,并将其重命名为你的语言代码。例如,pt.php 用于 "pt" => ["name" => "Português", "dir" => "ltr"],
  3. 将语言文件中的所有值翻译成新语言。(不完整的翻译将不被接受)。
  4. 复制 scripts/i18n/en.js 文件,并将其重命名为你的语言代码。例如,pt.js 用于 "pt" => ["name" => "Português", "dir" => "ltr"],
  5. 将语言文件中的所有值翻译成新语言。(不完整的翻译将不被接受)。

15. 许可证说明

本项目采用 GNU General Public License, Version 3 许可证。详情请参阅 LICENSE.md 文件。

选择 GPLv3 的原因:

选择 GNU General Public License version 3 (GPLv3) 是为了确保 Wallos 始终保持开源,并免费提供给社区使用。GPLv3 规定,任何衍生作品或修改都必须在相同的许可证下发布,从而促进软件自由的原则。

16. 相关链接


ellite/Wallos: Wallos: Open-Source Personal Subscription Tracker
https://github.com/ellite/Wallos

 

© 版权声明
THE END
喜欢就支持一下吧
点赞536 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容