feat: Update documentation for version 0.9.1, including changelog, configuration, and package manager support
Some checks failed
Tests & Quality Checks / Test on Python 3.11 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.11-1 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12-1 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.10 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.11-2 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12-2 (push) Has been cancelled
Tests & Quality Checks / Build Artifacts (push) Has been cancelled
Tests & Quality Checks / Build Artifacts-1 (push) Has been cancelled
Some checks failed
Tests & Quality Checks / Test on Python 3.11 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.11-1 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12-1 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.10 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.11-2 (push) Has been cancelled
Tests & Quality Checks / Test on Python 3.12-2 (push) Has been cancelled
Tests & Quality Checks / Build Artifacts (push) Has been cancelled
Tests & Quality Checks / Build Artifacts-1 (push) Has been cancelled
This commit is contained in:
parent
1054266d0e
commit
ac10fdcbdd
11 changed files with 196 additions and 159 deletions
95
README.md
95
README.md
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
> Professional Qt-based desktop application for intelligent drag-and-drop file handling between web applications and desktop clients (InDesign, Word, Notepad++, etc.)
|
||||
|
||||
  
|
||||
  
|
||||
|
||||
## Overview
|
||||
|
||||
|
|
@ -19,23 +19,25 @@ WebDrop Bridge embeds a web application in a Qt container with full filesystem a
|
|||
|
||||
## Features
|
||||
|
||||
- ✅ **Qt-based Architecture** - Professional Windows support via PySide6 (macOS support planned)
|
||||
- ✅ **Qt-based Architecture** - Professional cross-platform desktop app via PySide6 for Windows and macOS
|
||||
- ✅ **Embedded Web App** - QtWebEngine provides Chromium without browser limitations
|
||||
- ✅ **Drag Interception** - Converts text paths to native file operations
|
||||
- ✅ **Path Whitelist** - Security-conscious file system access control
|
||||
- ✅ **Configuration Management** - Profile-based settings with validation
|
||||
- ✅ **Settings Dialog** - Professional UI for path, URL, logging, and window configuration
|
||||
- ✅ **Configuration Management** - JSON config, profile import/export, and validation
|
||||
- ✅ **Runtime Branding** - Switch branding templates and packaged variants without code changes
|
||||
- ✅ **Multilingual UI** - Built-in translations for English, German, French, Italian, Russian, and Chinese
|
||||
- ✅ **Settings Dialog** - Language, branding, web source, path, URL, logging, and window configuration
|
||||
- ✅ **Auto-Update System** - Automatic release detection via Forgejo API
|
||||
- ✅ **Professional Build Pipeline** - MSI for Windows, DMG for macOS
|
||||
- ✅ **Comprehensive Testing** - Unit, integration, and end-to-end tests (80%+ coverage)
|
||||
- ✅ **Continuous Testing** - GitHub Actions test automation
|
||||
- ✅ **Comprehensive Testing** - Unit and integration coverage across core modules
|
||||
- ✅ **Continuous Testing** - Automated CI validation
|
||||
- ✅ **Structured Logging** - File-based logging with configurable levels
|
||||
|
||||
## Quick Start
|
||||
|
||||
### Requirements
|
||||
- Python 3.10+
|
||||
- Windows 10/11
|
||||
- Python 3.9+
|
||||
- Windows 10/11 or macOS 12+
|
||||
- 200 MB disk space (includes Chromium from PyInstaller)
|
||||
|
||||
### Installation from Pre-Built Release (Recommended)
|
||||
|
|
@ -58,11 +60,11 @@ brew upgrade webdrop-bridge # Update to latest version
|
|||
**Option 2: Direct wget (if you know the version)**
|
||||
|
||||
```bash
|
||||
# Replace VERSION with release tag (e.g., v0.8.0)
|
||||
wget https://git.him-tools.de/HIM-public/webdrop-bridge/releases/download/VERSION/WebDropBridge_Setup.msi
|
||||
# Replace X.Y.Z with a release version (e.g., 0.9.1)
|
||||
wget https://git.him-tools.de/HIM-public/webdrop-bridge/releases/download/vX.Y.Z/WebDropBridge-X.Y.Z-win-x64.msi
|
||||
|
||||
# Example for v0.8.0:
|
||||
wget https://git.him-tools.de/HIM-public/webdrop-bridge/releases/download/v0.8.0/WebDropBridge_Setup.msi
|
||||
# Example for v0.9.1:
|
||||
wget https://git.him-tools.de/HIM-public/webdrop-bridge/releases/download/v0.9.1/WebDropBridge-0.9.1-win-x64.msi
|
||||
```
|
||||
|
||||
**Option 3: Automated script (auto-detects platform)**
|
||||
|
|
@ -93,6 +95,7 @@ python -m venv venv
|
|||
|
||||
# Install dependencies
|
||||
pip install -r requirements.txt
|
||||
pip install -e .
|
||||
|
||||
# Run application
|
||||
python -m webdrop_bridge.main
|
||||
|
|
@ -103,6 +106,7 @@ python -m webdrop_bridge.main
|
|||
```bash
|
||||
# Install development dependencies
|
||||
pip install -r requirements-dev.txt
|
||||
pip install -e .
|
||||
|
||||
# Run tests
|
||||
pytest tests -v
|
||||
|
|
@ -178,42 +182,36 @@ webdrop-bridge/
|
|||
|
||||
## Configuration
|
||||
|
||||
WebDrop Bridge supports two configuration methods:
|
||||
WebDrop Bridge supports persisted JSON configuration plus optional bootstrap environment defaults.
|
||||
|
||||
### 1. Settings Dialog (Recommended)
|
||||
### 1. Settings Dialog / JSON Config (Recommended)
|
||||
Launch the application and access the Settings menu to configure:
|
||||
- **Paths Tab** - Add/remove allowed root directories
|
||||
- **URLs Tab** - Configure allowed web URLs (whitelist mode)
|
||||
- **Logging Tab** - Set log level and file location
|
||||
- **Window Tab** - Configure window dimensions
|
||||
- **Profiles Tab** - Save/load/export-import configuration profiles
|
||||
- **General Tab** - Select the UI language or follow the system locale automatically
|
||||
- **Branding Tab** - Switch, import, export, and preview runtime branding templates
|
||||
- **Web Source Tab** - Configure the embedded web application URL
|
||||
- **Paths / URLs / Logging / Window Tabs** - Control filesystem access, allowed sites, log output, and initial window size
|
||||
- **Profiles Tab** - Save, load, import, and export complete configuration profiles
|
||||
|
||||
Profiles are saved in `~/.webdrop_bridge/profiles/`
|
||||
Saved settings are written to the brand-specific application config directory as `config.json`.
|
||||
|
||||
### 2. Environment Variables
|
||||
Create a `.env` file in the project root. Available settings:
|
||||
### 2. Bootstrap Environment Variables (`.env`)
|
||||
A `.env` file is still supported for local development and branded packaged defaults. It is used when no JSON config exists yet.
|
||||
|
||||
```bash
|
||||
# Application
|
||||
APP_NAME=WebDrop Bridge
|
||||
APP_VERSION=1.0.0
|
||||
|
||||
# Paths (comma-separated)
|
||||
BRAND_ID=webdrop_bridge
|
||||
WEBAPP_URL=https://dev.agravity.io/
|
||||
ALLOWED_ROOTS=Z:/,C:/Users/Public
|
||||
|
||||
# Web URLs (empty = no restriction, items = kiosk mode)
|
||||
ALLOWED_URLS=
|
||||
|
||||
# Interface
|
||||
WEBAPP_URL=file:///./webapp/index.html
|
||||
LANGUAGE=auto
|
||||
LOG_LEVEL=INFO
|
||||
WINDOW_WIDTH=1024
|
||||
WINDOW_HEIGHT=768
|
||||
|
||||
# Logging
|
||||
LOG_LEVEL=INFO
|
||||
ENABLE_LOGGING=true
|
||||
```
|
||||
|
||||
For the full JSON structure and branding workflow, see [CONFIG_README.md](CONFIG_README.md) and [BRANDING_AND_RELEASES.md](docs/BRANDING_AND_RELEASES.md).
|
||||
|
||||
## Testing
|
||||
|
||||
WebDrop Bridge includes comprehensive test coverage with unit, integration, and end-to-end tests.
|
||||
|
|
@ -272,11 +270,20 @@ python build/scripts/build_windows.py --msi --code-sign
|
|||
```
|
||||
|
||||
Output:
|
||||
- Portable executable: `build/dist/windows/WebDropBridge/WebDropBridge.exe` (~195 MB)
|
||||
- Professional MSI installer: `build/dist/windows/WebDropBridge-{version}-Setup.msi`
|
||||
- SHA256 checksum: `build/dist/windows/WebDropBridge/WebDropBridge.exe.sha256`
|
||||
- Portable executable: `build/dist/windows/webdrop_bridge/WebDropBridge/WebDropBridge.exe`
|
||||
- Professional MSI installer: `build/dist/windows/webdrop_bridge/WebDropBridge-<version>-win-x64.msi`
|
||||
- SHA256 checksum: `build/dist/windows/webdrop_bridge/WebDropBridge-<version>-win-x64.msi.sha256`
|
||||
|
||||
**Note on macOS**: Build scripts exist for macOS (DMG generation), but have never been built or tested. macOS support is theoretical at this point. The Qt/PySide6 architecture should support macOS, but platform-specific testing and validation would be required.
|
||||
### macOS DMG Installer
|
||||
|
||||
```bash
|
||||
bash build/scripts/build_macos.sh
|
||||
```
|
||||
|
||||
Output:
|
||||
- Application bundle: `build/dist/macos/webdrop_bridge/WebDropBridge.app`
|
||||
- DMG installer: `build/dist/macos/webdrop_bridge/WebDropBridge-<version>-macos-universal.dmg`
|
||||
- SHA256 checksum: `build/dist/macos/webdrop_bridge/WebDropBridge-<version>-macos-universal.dmg.sha256`
|
||||
|
||||
### Creating Releases
|
||||
|
||||
|
|
@ -314,8 +321,8 @@ powershell -ExecutionPolicy Bypass -File build/scripts/create_release.ps1
|
|||
## Troubleshooting
|
||||
|
||||
### Application won't start
|
||||
- Ensure Python 3.10+ is installed
|
||||
- Check `logs/webdrop_bridge.log` for errors
|
||||
- Ensure Python 3.9+ is installed
|
||||
- Check the application log in your platform-specific app data directory
|
||||
- Verify all dependencies: `pip list`
|
||||
|
||||
### Drag-and-drop not working
|
||||
|
|
@ -332,10 +339,10 @@ powershell -ExecutionPolicy Bypass -File build/scripts/create_release.ps1
|
|||
|
||||
| Platform | Version | Status | Notes |
|
||||
|----------|---------|--------|-------|
|
||||
| Windows | 10, 11 | ✅ Full | Tested on x64, MSI installer support |
|
||||
| macOS | 12+ | ⚠️ **Untested** | Possible via Qt/PySide6, but never built or tested. Theoretical support only. |
|
||||
| Windows | 10, 11 | ✅ Full | Primary target with MSI packaging and update support |
|
||||
| macOS | 12, 13, 14 | ✅ Supported | Universal DMG builds for Intel and Apple Silicon |
|
||||
|
||||
**Note**: WebDrop Bridge is currently developed and tested exclusively on Windows. While the Qt/PySide6 framework supports macOS, we cannot guarantee functionality without actual macOS testing and validation. Contributions for macOS support validation are welcome.
|
||||
**Note**: Release candidates currently target both Windows and macOS. For branded production releases, validate signing assets and installer behavior on the target platform before shipping.
|
||||
|
||||
## Contributing
|
||||
|
||||
|
|
@ -367,4 +374,4 @@ MIT License - see [LICENSE](LICENSE) file for details
|
|||
|
||||
---
|
||||
|
||||
**Development Phase**: Phase 4 Complete | **Last Updated**: February 18, 2026 | **Current Version**: 1.0.0 | **Python**: 3.10+ | **Qt**: PySide6 (Qt 6)
|
||||
**Development Phase**: Phase 5 Release Candidates | **Last Updated**: April 16, 2026 | **Current Version**: 0.9.1 | **Python**: 3.9+ | **Qt**: PySide6 (Qt 6)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue