Metadata-Version: 2.4
Name: bsm-frontend
Version: 1.3.0b4
Summary: The React frontend for Bedrock Server Manager, packaged as a Python library.
Author-email: DMedina559 <dmedina559-github@outlook.com>
License: MIT License
        
        Copyright (c) 2025 dmedina559
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Repository, https://github.com/dmedina559/bsm-frontend.git
Project-URL: Bug Tracker, https://github.com/DMedina559/bsm-frontend/issues
Project-URL: Changelog, https://bedrock-server-manager.readthedocs.io/en/latest/changelog.html
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest<9.2,>=8.4.0; extra == "dev"
Requires-Dist: pre-commit<5.0,>=4.5.0; extra == "dev"
Dynamic: license-file

# Bedrock Server Manager UI

This is the React frontend for Bedrock Server Manager, packaged as a Python library.

## Installation

```bash
pip install bsm-frontend
```

## Usage

```python
from bsm_frontend import get_static_dir

static_files_path = get_static_dir()
print(f"Static files are located at: {static_files_path}")
```

## OpenAPI contract

Install `bedrock-server-manager` from the target backend checkout. Export with `python -m bedrock_server_manager.web.contract --output frontend/src/api/generated/openapi.json`, then run `npm run api:generate` in `frontend`. CI compares the complete document with backend `dev` using the backend-owned exporter and its declared dependencies.

## Application monitor

The Metrics view groups application performance, host utilization, runtime activity, and Bedrock processes. CPU and memory charts show recent observations using your preferred units. Pause updates to freeze the displayed snapshot; backend collection continues. History is held in backend memory and resets on restart. Missing measurements appear as a dash, not zero.

Administrators can also open Diagnostics on a backend with the diagnostics API:

- **Overview:** readiness, health, findings, and subsystem status at a glance.
- **Subsystems:** concise observations with expandable technical details and source timing. Search registered plugins and inspect their runtime status and owned work.
- **History:** filter and page retained records across restarts, then inspect correlated events, tasks, and records. Sources report availability independently.
- **Advanced:** inspect collector and installation metadata, save an in-memory comparison baseline, and compare fresh observations. Counter deltas are suppressed across restarts.

Refresh manually or enable a 15-second interval while Diagnostics is open. Unknown plugin status means the backend could not resolve its runtime status; it does not prove the plugin is loaded. Missing timestamps mean no corresponding timestamp was reported. Stale observations retain their source timing.

Download an authenticated support report and review it before sharing. Baselines and reports are not saved in browser storage. Leaving Diagnostics discards the baseline; account/session changes invalidate pending work. History requests start only when you open History.
