Installation¶
Install uv, then run from the repository. uv installs and manages Python as well as the project dependencies; Conda and a separately installed system Python are not needed:
uv python install 3.12
uv sync --managed-python
uv run brecon
The project sets uv's python-preference to only-managed, so normal launches
also use uv-managed Python instead of discovering a Conda or system interpreter.
The application uses PySide6 / Qt Widgets and PyNite for structural analysis.
The compact toolbar uses icon-only file, view, edit, load, analysis and result groups separated by vertical dividers. Hover an icon for its command and shortcut. Select/Member/Pan show the active mode; the properties menu opens model tables, materials, sections, cases/combinations and self-weight. Diagrams and deformation stay disabled until a valid snapshot exists. The same commands remain accessible through the menus and existing keyboard shortcuts.
Standalone desktop development previews. Native builds include their own Python,
Qt/WebEngine, solver, plotting and MCP dependencies. macOS produces Brecon.app
in a ZIP, Windows a portable Brecon/Brecon.exe folder in a ZIP, and Linux a
portable Brecon/Brecon folder in a tar.gz. Extract the whole archive and keep its
libraries together. Names identify version, operating system and CPU architecture.
These are development artifacts. Use Python/uv for the current published release.
Public installers, signing/notarization, quarantine/SmartScreen checks and broader
Linux distribution/graphics coverage remain pending.
Build on the target operating system from a reviewed wheel and corresponding source archive. Start with
a fresh build environment and export the locked runtime; the builder rejects an
editable install, stale wheel/source bytes or runtime versions outside uv.lock.
Build tools are separate from the application's runtime requirements:
uv build --no-sources
uv export --locked --no-dev --extra mcp --no-emit-project --format requirements-txt --output-file build-runtime.txt
uv venv --python 3.12 build/desktop-env
uv pip install --python build/desktop-env/bin/python -r build-runtime.txt -r desktop/requirements.txt dist/*.whl
build/desktop-env/bin/python -B scripts/build_desktop.py --wheel dist/*.whl --source dist/*.tar.gz --output dist/desktop
build/desktop-env/bin/python -B scripts/check_desktop.py --archive dist/desktop/Brecon-*.zip --output build/desktop-check
On Windows use build/desktop-env/Scripts/python.exe instead of bin/python
(the example uses Bash glob expansion; provide the exact wheel/archive names in
PowerShell). On Linux use Brecon-*.tar.gz; a display session and the Qt/X11/OpenGL
system libraries are required. CI uses Xvfb with software rendering on Ubuntu 22.04,
Windows Server 2025 and macOS 15 hosts. This does not certify all desktop hardware
or operating-system versions.
The archive check verifies SHA-256, extracts to a new location and runs the app without build-environment Python paths. Only run it on trusted build artifacts. It uses disposable preferences/recovery storage and exercises all built-in examples, actual spawned frame/plate workers, the offline viewport and PNG export, local plate inspection, print-to-PDF and authenticated MCP edits/analysis/result reads. Its JSON record and images identify that exact executable. The separate audit checks bundle symlinks, assets, metadata, notices, corresponding-source hash and the macOS ad-hoc signature. A minimum macOS bound is inferred from Python/native wheel tags; that bound does not replace testing on each claimed OS version.
The app's Contents/Resources/notices (macOS) or _internal/notices (Windows/Linux) includes its AGPL license, citation files,
corresponding source archive and build/dependency record. Dependency metadata and
its included license files are retained. macOS ZIP/Linux tar preserve symlinks;
all archives have a SHA-256 manifest. The manually dispatched Build Desktop Previews
workflow performs the same relocated checks and uploads temporary Actions
artifacts; it does not publish a GitHub release, a PyPI upload or a signed installer.
See the desktop validation record for the actual checked platforms.
Source: GUIDE.md. This manual follows the current repository; the published rc1 wheel has a smaller feature set.