feat: add in-app release notes and what's new dialog
This commit is contained in:
@@ -94,6 +94,7 @@ Implemented routes:
|
||||
| `/` | `GET` | Basic Auth | Renders `templates/roll_calculator.html`. |
|
||||
| `/help` | `GET` | Basic Auth | Renders the Help landing page. |
|
||||
| `/help/user-manual` | `GET` | Basic Auth | Reads `docs/de/user_manual.md`, renders it as HTML, and displays it in the RollCalc Help layout. |
|
||||
| `/help/recent-changes` | `GET` | Basic Auth | Reads `docs/de/recent_changes.md`, renders it as HTML, and displays it in the RollCalc Help layout. |
|
||||
| `/help/user-manual/screenshots/<path:filename>` | `GET` | Basic Auth | Serves German user-manual screenshots from `docs/de/screenshots/` only. |
|
||||
| `/static/<path:filename>` | `GET` | Basic Auth | Intended protected static-file serving from `static/`. |
|
||||
| `/api/health` | `GET` | Basic Auth | Returns app health and version. |
|
||||
@@ -132,8 +133,16 @@ The user manual is available at:
|
||||
/help/user-manual
|
||||
```
|
||||
|
||||
Recent changes are available at:
|
||||
|
||||
```text
|
||||
/help/recent-changes
|
||||
```
|
||||
|
||||
`docs/de/user_manual.md` is the leading source for the German user manual. The app reads this Markdown file on request and renders it server-side with `markdown-it-py`; no generated static HTML copy is maintained. Raw HTML in the Markdown source is disabled during rendering.
|
||||
|
||||
`docs/de/recent_changes.md` is the leading source for full German release notes. It is rendered through the same authenticated Markdown infrastructure.
|
||||
|
||||
The documentation directory is prepared for additional languages:
|
||||
|
||||
```text
|
||||
@@ -153,6 +162,24 @@ docs/de/screenshots/
|
||||
|
||||
The application rewrites those relative Markdown image paths to the authenticated manual screenshot route, which is limited to the active language's screenshot directory.
|
||||
|
||||
### What's New Dialog
|
||||
|
||||
The calculator page shows a compact What's New dialog once per build version. The current version comes from `build_info.version`; if that value is empty or `unknown`, the dialog is not shown.
|
||||
|
||||
The last acknowledged version is stored only in the browser:
|
||||
|
||||
```text
|
||||
rollcalc_last_seen_version
|
||||
```
|
||||
|
||||
The short dialog summary is maintained in:
|
||||
|
||||
```text
|
||||
static/recent_changes.json
|
||||
```
|
||||
|
||||
Keep `docs/de/recent_changes.md` as the complete release-note source and `static/recent_changes.json` as the short 3-5 item summary for the startup dialog.
|
||||
|
||||
## Frontend Entry Point
|
||||
|
||||
The active UI is `templates/roll_calculator.html`.
|
||||
|
||||
Reference in New Issue
Block a user