Image Cover ThumbShare Config Tool tạo, cấu hình, JSON, SQL, Git, DNS Update
Link source code: Truy Cập


ConfigTool là ứng dụng MAUI Blazor Hybrid chạy trên Windows, được xây dựng để quản trị file cấu hình JSON, quản lý cơ sở dữ liệu SQL và hỗ trợ một số công cụ phụ trợ cho quá trình phát triển game, đặc biệt là workflow làm việc cho dân dev.
1. Mục tiêu chính
ConfigTool giúp lập trình viên thao tác với các file config JSON bằng giao diện trực quan, giống như làm việc với database. Khi ứng dụng khác đang ghi file cấu hình, công cụ vẫn có thể theo dõi thay đổi realtime, tự reload và merge dữ liệu an toàn để hạn chế ghi đè nhầm.
2. Quản trị JSON Config
- Chọn thư mục chứa config bằng hộp thoại native Windows.
- Tự động quét và đọc toàn bộ file
*.jsontrong thư mục đã chọn. - Hiển thị mỗi file JSON dưới dạng bảng hoặc block dữ liệu dễ chỉnh sửa.
- Hỗ trợ CRUD object, array, item, key và field.
- Có block editor cha/con cho object và array, hỗ trợ thu gọn/mở rộng.
- Cho phép thêm nhanh nhiều item, thêm theo index và giữ item cũ khi cập nhật.
- Hỗ trợ nhập nhanh bằng JSON paste hoặc danh sách phân tách bằng dấu phẩy.
- Có tìm kiếm nhanh, phân trang, query form và gợi ý key/field có sẵn.
- Theo dõi realtime thay đổi file bằng
FileSystemWatchervà background scan. - Load dữ liệu qua SignalR local server, giúp Blazor client không cần dùng nhiều JavaScript custom.
3. SQL Admin
Ngoài JSON, ConfigTool còn có module SQL Admin để quản trị nhiều tài khoản kết nối SQL trong file connect.json.
- Hỗ trợ MySQL, MariaDB và SQL Server/MSSQL.
- Cho phép thêm, sửa, xóa, nhân bản và test tài khoản kết nối.
- Quản trị database, table, column, foreign key và record bằng giao diện.
- Có query editor chạy qua SignalR.
- Hỗ trợ menu chuột phải cho database, bảng, cột, key, foreign key, record và kết quả query.
- Cho phép import/export SQL theo kiểu phpMyAdmin.
- Kết quả SELECT có thể sửa, xóa hoặc thêm record trực tiếp trong bảng kết quả.
4. Dynamic DNS No-IP / Dynu
ConfigTool có thêm tab DNS Update để quản lý Dynamic DNS nội bộ.
- Hỗ trợ tạo nhiều tài khoản No-IP.org và Dynu.com.
- Mỗi tài khoản có thể quản lý nhiều domain hoặc hostname.
- Có thể lấy IP public thật và update từng domain hoặc update hàng loạt.
- Log update, trạng thái domain, IP mới nhất và thông tin tài khoản được lưu trong
config/dynamic.json. - Có nút mở nhanh thư mục
configbằng Windows Explorer.
5. Git Admin
ConfigTool có module Git Admin sử dụng Git CLI thật trên máy. Vì vậy, người dùng cần cài Git trước khi sử dụng chức năng này.
6. Giao diện người dùng
- Ứng dụng dùng MAUI Blazor Hybrid theo phong cách single-page.
- Giao diện hiện đại, responsive, sử dụng Bootstrap modal.
- Thanh điều hướng nằm ngang phía trên.
- Modal rộng khoảng 90% cửa sổ và có thể resize.
- Sử dụng FontAwesome local vendor.
- Hạn chế JavaScript custom, chỉ dùng Bootstrap JS khi thật sự cần.
7. Công nghệ sử dụng
- .NET / MAUI Blazor Hybrid Windows
- Blazor
- SignalR local server
- Bootstrap local vendor
- FontAwesome local vendor
- MySqlConnector cho MySQL/MariaDB
- Microsoft.Data.SqlClient cho SQL Server
8. Yêu cầu môi trường
- Windows 10 hoặc Windows 11.
- Visual Studio 2026 hoặc IDE hỗ trợ MAUI/.NET tương ứng.
- .NET SDK đúng version project đang dùng.
- Đã cài MAUI workload.
9. Build và publish
Project có thể chạy trực tiếp trong Visual Studio bằng target Windows. Khi build Debug có thể dùng dòng lệnh dotnet restore và dotnet build. Với bản Release dạng folder rời, tài liệu khuyến nghị dùng dotnet publish thay vì build thường để tạo output có thể chạy độc lập.
10. Lỗi thường gặp
-
Trùng appicon khi build: cần đổi tên icon hoặc loại file PNG khỏi MauiImage, sau đó xóa cache
binvàobj. - MySQL access denied: kiểm tra lại user, password, quyền đăng nhập, cấu hình không mật khẩu và trạng thái service MySQL/MariaDB.
-
Folder dialog không hiện: kiểm tra target Windows và implementation trong
Platforms/Windows.
11. Lưu ý khi upload Git
- Không commit thư mục build như
bin,obj,.vs. - Không commit file chứa thông tin nhạy cảm như
config/cauhinh.json,config/connect.jsonhoặcconfig/dynamic.json. - Nên commit file mẫu như
connect.example.jsonhoặcdynamic.example.json. - Không commit FontAwesome Pro nếu license không cho phép.
12. Kết luận
ConfigTool là một công cụ quản trị nội bộ hữu ích cho lập trình viên game và ứng dụng cần làm việc nhiều với JSON config, SQL, Dynamic DNS và Git. Điểm mạnh của công cụ nằm ở giao diện trực quan, khả năng theo dõi realtime, hỗ trợ workflow Unity và cơ chế merge dữ liệu an toàn để hạn chế xung đột khi nhiều ứng dụng cùng thao tác trên file cấu hình.