Skip to content

feat(gui): Add modern configuration GUI with ttkbootstrap#277

Open
NOirBRight wants to merge 11 commits intoHaujetZhao:masterfrom
NOirBRight:feature/gui-config-tool
Open

feat(gui): Add modern configuration GUI with ttkbootstrap#277
NOirBRight wants to merge 11 commits intoHaujetZhao:masterfrom
NOirBRight:feature/gui-config-tool

Conversation

@NOirBRight
Copy link

Summary

This PR adds a modern, user-friendly configuration GUI for CapsWriter-Offline using ttkbootstrap.

Features

  • Modern UI: Clean, dark/light theme support with ttkbootstrap
  • Panel-based Configuration:
    • ASR settings (model selection, Vulkan acceleration)
    • LLM settings (Ollama integration, role management)
    • Shortcut settings (hotkey configuration)
    • Overlay settings (status HUD customization)
    • General settings (auto-start, minimize to tray)
  • Service Management: Start/stop server and client from GUI
  • Real-time Status Overlay: Shows recording/transcription status
  • PyInstaller Support: Proper handling of frozen mode for subprocess launching
  • Hot Reload: Automatically applies configuration changes

Files Added/Modified

  • \CapsWriter-GUI.pyw\ - Main entry point
  • \gui_launcher.py\ - PyInstaller entry script
  • \gui/\ - All GUI modules
  • \util/client/startup.py\ - Fixed UnboundLocalError in tray setup
  • \config.py\ - Configuration model updates

Screenshots

The GUI provides a tabbed interface for easy configuration management.

Testing

Tested on Windows 11 with Python 3.13.

@NOirBRight NOirBRight force-pushed the feature/gui-config-tool branch from cd061b7 to 4bd512a Compare February 2, 2026 20:03
- Add CapsWriter-GUI.pyw as main entry point
- Add gui_launcher.py for PyInstaller packaging
- Add panels for ASR, LLM, Shortcuts, Overlay, and General settings
- Add status overlay bridge for real-time feedback
- Add safe_console utility for Unicode handling
- Fix EXE mode subprocess launching (use system Python instead of EXE)
- Support auto-start, minimize to tray, and hot-reload features
@NOirBRight NOirBRight force-pushed the feature/gui-config-tool branch from 4bd512a to 8d4726e Compare February 2, 2026 20:03
@HaujetZhao
Copy link
Owner

运行看了下,这个 GUI 写得不错,挺现代化的,很好看。

image

只是我不想用 GUI,如果后面加功能,GUI 要做调整,我觉得挺麻烦的,懒癌就犯了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants