基于 beancount 提供个人记账财务管理的 RESTful API 服务(包含前端页面)
Go to file
RenLangMan afc1725b09 dockerfile使用python3.10.2版本
安装whl模式的beancount扩展库,支持beancount账户科目二级和二级以下科目中英文

已修改        dockerfile
已添加        beancount-2.3.4-cp310-cp310-linux_x86_64.whl

Signed-off-by: RenLangMan <liangzai450@sina.com>
2022-02-16 22:44:09 +08:00
.github/workflows workflow_dispatch: 2022-01-18 23:42:47 +08:00
config add: white_list.json 2021-12-06 22:36:01 +08:00
public update webview 2022-01-09 14:21:42 +08:00
script update version: v1.1.1 2021-12-24 12:18:59 +08:00
service version 1.1.3 2022-01-09 14:23:03 +08:00
template add config guide and icon name format 2021-12-01 17:32:15 +08:00
tests add: bql exec impl and query api 2021-11-21 22:37:13 +08:00
.gitignore Merge branch 'main' of github.com:BaoXuebin/beancount-gs into main 2021-12-22 23:25:25 +08:00
License update readme and license 2021-11-29 22:56:22 +08:00
README.md update readme: add docker volumn for bak document 2021-12-24 12:14:44 +08:00
beancount-2.3.4-cp38-cp38-linux_x86_64.whl 修改为py3.8 添加whl文件 2022-02-16 22:44:09 +08:00
beancount-2.3.4-cp310-cp310-linux_x86_64.whl dockerfile使用python3.10.2版本 2022-02-16 22:44:09 +08:00
docker-compose.yml fixbug: linux change account not append file (#2) 2021-12-09 16:49:06 +08:00
dockerfile dockerfile使用python3.10.2版本 2022-02-16 22:44:09 +08:00
go.mod add stats payee query impl 2021-11-26 17:12:07 +08:00
go.sum add stats payee query impl 2021-11-26 17:12:07 +08:00
server.go add refresh account api 2021-12-16 15:30:03 +08:00
snapshot.png Add files via upload 2021-11-30 14:27:06 +08:00

README.md

beancount-gs

license docker image size

演示地址 使用文档

介绍

beancount 是一个优秀的开源复式记账工具,因为其基于文本记录的特性,难以拓展到移动端;本项目旨在将常见的记账行为封装为 RESTful API。

本仓库使用 Golang 进行文本的读写和接口服务支持,利用 bean-query 获取内容并解析,以 Json 格式返回。并基于已实现的接口内置实现了前端页面(适配移动端)。

snapshot

特性

  • 私有部署
  • 多账本
  • 账户管理
  • 资产管理
  • 统计图表
  • 多币种
  • 标签
  • 投资管理(FIFO)
  • 第三方账单导入(支付宝,微信支付)
  • 事件

如何使用

本地打包

  1. 克隆本项目到本地
  2. 根目录执行 go build
  3. 执行 ./beancount-gs (-p 指定端口号,-secret 指定配置密钥)

release

  1. 下载并解压项目的 release
  2. 执行根目录下的 ./beancount-gs.exe

docker

docker run --name beancount-gs -dp 10000:80 \
-w /app \
-v "/data/beancount:/data/beancount" \
-v "/data/beancount/icons:/app/public/icons" \
-v "/data/beancount/config:/app/config" \
-v "/data/beancount/bak:/app/bak" \
xdbin/beancount-gs:latest \
sh -c "cp -rn /app/public/default_icons/* /app/public/icons && ./beancount-gs -p 80"

docker-compose

version: "3.9"
services:
  app:
    container_name: beancount-gs
    image: xdbin/beancount-gs:latest
    ports:
      - "10000:80"
    # volumes 挂载目录会导 /app/public/icons 中的图标被覆盖,这里将默认图标在挂载后重新拷贝图标
    command: >
      sh -c "cp -rn /app/public/default_icons/* /app/public/icons && ./beancount-gs -p 80"      
    volumes:
      - "${dataPath:-/data/beancount}:${dataPath:-/data/beancount}"
      - "${dataPath:-/data/beancount}/icons:/app/public/icons"
      - "${dataPath:-/data/beancount}/config:/app/config"
      - "${dataPath:-/data/beancount}/bak:/app/bak"

项目负责人

@BaoXuebin

开源协议

MIT @BaoXuebin