Skip to content

The front end part of an accounting tool based on Flutter and Gin's front end separation

License

Notifications You must be signed in to change notification settings

ZiRunHua/LeapLedger-App

Repository files navigation

GitHub License GitHub Downloads (all assets, all releases) GitHub stars GitHub Release

LeapLedger-App

English | 简体中文

LeapLedger是一个的前后端分离的免费开源的记账软件,基于flutter带来丝滑流畅的使用体验,在未来轻松扩展至iOS、Mac和Windows。

这是LeapLedger的客户端部分,更多的介绍内容请浏览:https://github.com/ZiRunHua/LeapLedger

服务端

Gin服务端项目传送:https://github.com/ZiRunHua/LeapLedger

开发

如果你只想使用Docker构建安装包请跳转

  1. 检查flutter环境
flutter doctor -v 
  1. 克隆项目
git clone https://github.com/ZiRunHua/LeapLedger-App.git leap_ledger_app
  1. 新建./.vscode/launch.json文件 新建./.vscode/launch.json文件,复制一下内容并设置host
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "LeapLedger-App",
      "request": "launch",
      "type": "dart",
      "args": [
        "--dart-define=config.server.network.host=",
        "--dart-define=config.server.network.port=8080",
      ]
    }
  ]
}
  1. 启动API服务

我们提供了启动后端服务器的脚本,该脚本会自动寻找当前客户端版本对应的最新可用的后端docker镜像,并执行启动命令

API服务依赖Docker,请确保你安装了它

docker --version
  • window

PowerShell脚本,如果命令的执行出现问题,请在“文件管理器”中右键点击start.ps1,选择“使用PowerSheel运行”

cd service
.\start.ps1
  • linux/mac
cd service
./start

如果以上方式都没能启动API服务,不用担心,你可以直接git clone服务端项目,然后切换到对应版本后运行。

传送门:https://github.com/ZiRunHua/LeapLedger

启动完成后,你可以通过访问以下 URL 来验证 API 服务是否正常运行:

http://localhost:8080/public/health

  1. API文档 采用了RESTful API设计风格,提供了多种形式的API文档

构建安装包

如果你已经配置好了 Flutter 开发环境,可以使用以下命令来构建 APK 文件。

请将 <ip> 替换为你主机的 IP 地址,端口默认为 8080,可以不做修改。

flutter build apk --release --dart-define=config.server.network.host=<ip> --dart-define=config.server.network.port=8080

Docker

使用docker构建请在根目录下新建.env文件,并设置 IP 地址

# 服务器地址
SERVER_HOST=""
# 服务器端口
SERVER_PORT="8080"
# 服务端接口签名对称秘钥 可选
# SERVER_SIGN_KEY=""

执行以下命令来启动构建过程。构建过程可能需要几分钟时间,具体取决于你的系统性能。如果你对 Android 开发有一定了解,可以通过挂载本地的 Gradle 路径来加速构建过程。

docker-compose up --build build_apk 

构建完成后,请检查./docker/build目录以查看生成的 APK 文件。

我们需要你

LeapLedger项目仍在初期开发阶段,许多功能和细节还在不断完善中。如果你有任何需求和建议欢迎提交issues,如果你对LeapLedger感兴趣欢迎体提交pull request,期待你的加入。

我们会在develop分支进行功能开发和调整,而main分支则用于发布稳定版本。

Stargazers over time

Stargazers over time