GehaSoftwareHub¶
Desktop application for software management at Geha Anlagenbau GmbH.
Architecture Overview¶
GehaSoftwareHub/
|
|-- src/
| |-- shared_services/ Core infrastructure
| | |-- logging/ Async logger with auto-caller detection
| | |-- path_management/ Cross-platform path resolution
| | |-- rendering/ Icons, stylesheets, document rendering
| | |-- prompt_dialogs/ Theme-aware dialogs
| | |-- security/ OAuth, encryption, organization sync
| | |-- settings/ Application settings (QSettings)
| | |-- file_operations/ Atomic, crash-safe file I/O
| | |-- cloud_com/ GitHub API communication
| | |-- state/ Observable runtime state
| | '-- utils/ Date/time formatting
| |
| |-- custom_widgets/ Reusable Qt widgets
| | |-- feedback/ Loading bars, progress indicators
| | |-- controls/ Toggle switches, navigation buttons
| | |-- dialogs/ User guide dialog
| | '-- widget_handlers/ Splitters, stacked views, caching
| |
| '-- main_hub/ Application shell
| |-- orchestration/ Main window controller and view
| '-- features/ Feature modules (home, settings, update, ...)
|
'-- modules/ Domain modules (PlantDesign, ...)
Quick Start¶
Prerequisites¶
- Python 3.13
- PySide6
Building the Documentation¶
Open http://127.0.0.1:8000 in your browser.
Key Sections¶
Developer Guide¶
Coding standards, architecture patterns, testing strategy, and Git workflow.
API Reference¶
Module documentation and API reference for all shared services, custom widgets, and feature modules.
Tech Stack¶
| Component | Technology |
|---|---|
| Language | Python 3.13 |
| UI Framework | PySide6 (Qt 6) |
| Packaging | Nuitka |
| Cloud | Cloudflare R2, GitHub API |
| Auth | OAuth 2.0 (Auth0) |