Skip to content

基于 Avalonia 的 MAAFramework 通用 GUI 项目 | A universal GUI project for MAAFramework based on Avalonia

License

Notifications You must be signed in to change notification settings

233Official/MFAAvalonia

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

898 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LOGO

MFAAvalonia

🚀 新一代跨平台自动化框架图形界面

基于 Avalonia UI 构建的 MaaFramework 通用 GUI 解决方案

License .NET Platform Commit Activity Stars Mirror酱


English | 简体中文

✨ 特性亮点

🎨 现代化界面

  • 基于 SukiUI 打造的精美界面
  • 支持 亮色/暗色 主题自动切换
  • 流畅的动画效果与交互体验

🌍 真正的跨平台

  • Windows / Linux / macOS 全平台支持
  • 原生性能,无需额外运行时
  • 统一的用户体验

⚡ 开箱即用

  • 与 MaaFramework 项目模板深度集成
  • 简单配置即可快速部署
  • 支持 Mirror酱 一键更新

🔧 高度可定制

  • 灵活的任务配置系统
  • 支持多语言国际化
  • 丰富的扩展接口

📸 界面预览

preview

📋 系统要求

组件 要求
运行时 .NET 10.0 或更高版本
资源 基于 MaaFramework 的资源项目
系统 Windows 10+、Linux (X11/Wayland)、macOS 10.15+

🚀 快速开始

方式一:自动安装(推荐)

MaaFramework 项目模板已内置 MFAAvalonia,创建项目时自动配置完成。

方式二:手动安装

📦 点击展开安装步骤
  1. 下载发行版

    Releases 下载最新版本并解压

  2. 复制资源文件

    maafw/assets/resource/* → MFAAvalonia/resource/
    maafw/assets/interface.json → MFAAvalonia/
    
  3. 配置 interface.json

    根据下方配置说明修改 interface.json 文件

⚙️ 配置说明

基础配置结构

{
  // 项目基本信息
  "name": "项目名称",
  "version": "1.0.0",
  "url": "https://github.com/{用户名}/{仓库名}",
  "custom_title": "自定义窗口标题",
  
  // Mirror酱更新配置
  "mirrorchyan_rid": "项目ID",
  "mirrorchyan_multiplatform": false,
  
  // 资源配置
  "resource": [
    {
      "name": "官服",
      "path": "{PROJECT_DIR}/resource/base"
    },
    {
      "name": "Bilibili服",
      "path": [
        "{PROJECT_DIR}/resource/base",
        "{PROJECT_DIR}/resource/bilibili"
      ]
    }
  ],
  
  // 任务配置
  "task": [
    {
      "name": "任务名称",
      "entry": "任务入口",
      "default_check": true,
      "doc": "任务说明文档",
      "repeatable": true,
      "repeat_count": 1
    }
  ]
}

任务配置详解

字段 类型 默认值 说明
name string - 任务显示名称
entry string - 任务入口接口
default_check boolean false 是否默认选中
doc string null 任务说明文档(支持富文本)
repeatable boolean false 是否可重复执行
repeat_count number 1 默认重复次数

📝 富文本格式

任务文档 (doc) 支持以下格式:

  • Markdown - 支持大部分标准语法
  • HTML - 支持部分标签
  • 自定义标记 - 扩展样式支持
标记 效果 示例
[color:颜色]...[/color] 文字颜色 [color:red]红色文字[/color]
[b]...[/b] 粗体 [b]粗体文字[/b]
[i]...[/i] 斜体 [i]斜体文字[/i]
[u]...[/u] 下划线 [u]下划线文字[/u]
[s]...[/s] 删除线 [s]删除线文字[/s]

🧪 高级功能

Advanced 字段(实验性)

Tip

推荐使用 InterfaceV2 的 input 类型

advanced 字段允许通过 UI 输入框动态配置 pipeline_override,为用户提供更灵活的自定义选项。

📖 查看配置示例
{
  "task": [
    {    
      "name": "测试任务",
      "entry": "任务A",
      "advanced": ["高级设置A", "高级设置B"]
    }
  ],
  "advanced": {
    "高级设置A": {
      "field": "template_name",
      "type": "string",
      "default": "default.png",
      "pipeline_override": {
        "任务A": {
          "template": "{template_name}"
        }
      }
    },
    "高级设置B": {
      "field": ["x", "y"],
      "type": ["int", "int"],
      "default": ["100", "200"],
      "pipeline_override": {
        "任务A": {
          "roi": ["{x}", "{y}", 50, 50]
        }
      }
    }
  }
}

字段说明:

  • field - 字段名称,支持 stringstring[]
  • type - 字段类型,支持 stringstring[]
  • default - 默认值,支持 stringstring[]

🛠️ 开发指南

多语言支持

interface.json 同级目录创建 lang 文件夹,添加语言文件:

lang/
├── zh-cn.json  # 简体中文
├── zh-tw.json  # 繁体中文
└── en-us.json  # English

任务名称和文档可使用 key 引用,MFAAvalonia 会根据语言设置自动加载对应翻译。

公告系统

.md 文件放入 resource/announcement/ 目录即可作为公告显示。资源更新时会自动下载 Changelog 作为公告。

启动参数

# 使用指定配置文件启动
MFAAvalonia -c 配置名称

自定义图标

logo.ico 放置在程序根目录的 Assets 文件夹里即可替换窗口图标。

📄 开源许可

本项目基于 GPL-3.0 License 开源。

🙏 致谢

开源项目

项目 描述
SukiUI Avalonia 桌面 UI 库
MaaFramework 图像识别自动化框架
MaaFramework.Binding.CSharp MaaFramework 的 C# 封装
Mirror酱 资源更新服务
Serilog 结构化日志库
Newtonsoft.Json 高性能 JSON 序列化库
AvaloniaExtensions.Axaml Avalonia 语法糖扩展
CalcBindingAva XAML 计算绑定扩展

贡献者

感谢所有为 MFAAvalonia 做出贡献的开发者们!

Contributors
**如果这个项目对你有帮助,请给我们一个 ⭐ Star!**

Star History Chart

About

基于 Avalonia 的 MAAFramework 通用 GUI 项目 | A universal GUI project for MAAFramework based on Avalonia

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 99.3%
  • Other 0.7%