diff --git a/LOGAR-LICENSING b/LOGAR-LICENSING
index e6d7fa5..ac2ec07 160000
--- a/LOGAR-LICENSING
+++ b/LOGAR-LICENSING
@@ -1 +1 @@
-Subproject commit e6d7fa5b541f9a1e4b52ddbb89a59fcc9f50271d
+Subproject commit ac2ec07c1220f5c1ab0b8d75d334b36b6ae8226b
diff --git a/README.md b/README.md
index 29bea9b..dbcc9f3 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,18 @@
+
+
+
+
# LOGAR: Fleet Log Aggregation & Centralized Provisioning System
### *Secure Log Aggregation, PKI Fleet Licensing & Centralized Delivery for Autonomous AI Analysis*
-[](RELEASE_NOTES.md)
-[](tests/)
+[](RELEASE_NOTES.md)
+[](tests/)
[](https://gitea.eibl.tech/me0nline/LOGAR/wiki/PKI-and-Licensing)
+[](wiki/Branding-Guide.md)
**LOGAR** is an enterprise-grade log aggregation, normalization, and centralized provisioning system built for heterogeneous server fleets (Windows & Linux). It pairs ultra-lightweight, zero-state edge forwarders with a secure centralized server hub that enforces mutual TLS 1.3 (**mTLS**) authentication, dynamic PKI fleet licensing with cryptographic seat leasing, 12-hour temporal persistence tracking, and direct anomaly pass-throughβdelivering clean, structured, verified log telemetry directly to **Hermes AI** for autonomous deep reasoning, contextual root-cause analysis, and operational decision-making.
-> π **Comprehensive Technical Documentation**: Full architectural specifications, state machines, PKI X.509 OID definitions, and complete REST API references are maintained on the **[LOGAR Gitea Wiki](https://gitea.eibl.tech/me0nline/LOGAR/wiki)**.
+> π **Comprehensive Technical Documentation**: Full architectural specifications, state machines, PKI X.509 OID definitions, branding assets, and complete REST API references are maintained on the **[LOGAR Gitea Wiki](https://gitea.eibl.tech/me0nline/LOGAR/wiki)**.
---
@@ -107,8 +112,17 @@ Once installed or executed, access the web console:
```
LOGAR/
+βββ assets/ # Official vector SVGs, PNGs, ICOs, and branding bitmaps
+β βββ logo.svg # Master vector emblem
+β βββ logo_transparent.svg # Transparent WebUI emblem
+β βββ logo_banner.svg # Full brand banner
+β βββ logo.ico / favicon.ico # Application & web icons
+β βββ wizard_*.bmp # Installer dialog bitmaps
+βββ wiki/ # Comprehensive documentation & guides
+β βββ Branding-Guide.md # Official visual identity and design system
βββ .gitea/workflows/ # CI/CD pipelines (ci.yml, release.yml)
βββ compilation/ # Build scripts, Linux installers & Inno Setup scripts
+β βββ generate_branding_assets.py # Asset & bitmap generator
β βββ install_linux_client.sh # Linux client systemd auto-installer
β βββ install_linux_server.sh # Linux server systemd auto-installer
β βββ package_dist.py # Standalone binary cross-compiler
@@ -118,7 +132,7 @@ LOGAR/
β βββ server_enrollment.py # Sub-CA PKI and certificate generator
β βββ Win_Client.py # Windows edge forwarder
β βββ Linux_Client.py # Linux edge forwarder
-βββ tests/ # Automated test suites (35 unit tests + pipeline test)
+βββ tests/ # Automated test suites (42 unit & integration tests)
βββ LOGAR-LICENSING/ # Standalone Master License Authority (Git submodule)
βββ RELEASE_NOTES.md # Version history and security changelog
βββ README.md # Repository overview
@@ -146,7 +160,7 @@ LOGAR/
## Testing & Cross-Compilation
```bash
-# Run full unit test suite (35 tests)
+# Run full unit test suite (42 tests)
python -m unittest discover -s tests -v
# Run end-to-end mTLS pipeline integration test
@@ -162,6 +176,7 @@ python compilation/package_dist.py --target all
For in-depth operational guides, lifecycle state machines, and PKI specifications, consult the **[LOGAR Gitea Wiki](https://gitea.eibl.tech/me0nline/LOGAR/wiki)**:
+* [Branding & Design System Guide](https://gitea.eibl.tech/me0nline/LOGAR/wiki/Branding-Guide)
* [Architecture & Design Details](https://gitea.eibl.tech/me0nline/LOGAR/wiki/Architecture-and-Design)
* [System State Machines & Subsystem Lifecycles](https://gitea.eibl.tech/me0nline/LOGAR/wiki/State-Machines-and-Lifecycles)
* [PKI Architecture & Custom X.509 Seat OIDs](https://gitea.eibl.tech/me0nline/LOGAR/wiki/PKI-and-Licensing)
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index d54c177..108f8a7 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,6 +1,20 @@
-# LOGAR Release v0.3.2
+# LOGAR Release Notes
-### πͺ Windows Installer Fixes
+## [v0.3.3] - 2026-09-27
+
+### π¨ Brand Identity, Centralized Asset Library & Design System
+- **Centralized `/assets` Repository**: Added official vector graphics (`logo.svg`, `logo_transparent.svg`, `logo_dark.svg`, `logo_banner.svg`), high-resolution master PNGs (16px to 512px), multi-resolution Windows ICOs (`logo.ico`, `favicon.ico`), and installer dialog bitmaps (`wizard_header.bmp`, `wizard_small.bmp`, `wizard_sidebar.bmp`).
+- **Official Wiki Branding Guide**: Published comprehensive visual identity standards at `wiki/Branding-Guide.md` detailing logo anatomy, color palettes (Cyber Cyan `#00E5FF`, Emerald `#00FFA3`, Dark Navy `#0E1A2E`), typography, clear-space rules, dos and don'ts, and strict non-SIEM positioning.
+- **Unified Interface & Tab Branding**: Implemented transparent vector logos on all web navigation bars and browser tabs across both the LOGAR Server Hub (`:8443`) and Master Licensing Authority (`logar.eibl.tech`).
+- **Clean Installer Bitmaps**: Regenerated 24-bit RGB header bitmaps with seamless white backgrounds (`#FFFFFF`) matching native Windows Inno Setup wizard dialogs.
+- **Automated Asset Pipeline**: Enhanced `compilation/generate_branding_assets.py` to deterministically compile and distribute assets across main repo, compilation subdirectories, and the licensing submodule without third-party graphics dependencies.
+
+---
+
+## [v0.3.2] - 2026-09-27
+
+### πͺ Windows Installer & Web Portal Enhancements
+- **Project Showcase Landing Page**: Deployed high-impact public homepage at `GET /` on the licensing authority with architecture diagrams, quickstart commands, and direct navigation to Gitea, Wiki, and the Licensing Portal (`/licensing`).
- **Standalone Windows Binaries & Python Runtime**: Resolved issues with standalone Windows executable execution and bundled runtime paths.
- **Data Directory Selection & Permissions**: Added custom data directory selection during setup and fixed permissions for background Windows services.
- **Service Lifecycle & Clean Uninstallation**: Resolved service startup issues and ensured complete cleanup of state files upon uninstallation.
diff --git a/assets/favicon.ico b/assets/favicon.ico
new file mode 100644
index 0000000..d8cfc0a
Binary files /dev/null and b/assets/favicon.ico differ
diff --git a/assets/logo.ico b/assets/logo.ico
new file mode 100644
index 0000000..d8cfc0a
Binary files /dev/null and b/assets/logo.ico differ
diff --git a/assets/logo.png b/assets/logo.png
new file mode 100644
index 0000000..15feeb8
Binary files /dev/null and b/assets/logo.png differ
diff --git a/assets/logo.svg b/assets/logo.svg
new file mode 100644
index 0000000..49eafb9
--- /dev/null
+++ b/assets/logo.svg
@@ -0,0 +1,43 @@
+
\ No newline at end of file
diff --git a/assets/logo_128x128.png b/assets/logo_128x128.png
new file mode 100644
index 0000000..83bd9d0
Binary files /dev/null and b/assets/logo_128x128.png differ
diff --git a/assets/logo_16x16.png b/assets/logo_16x16.png
new file mode 100644
index 0000000..f245889
Binary files /dev/null and b/assets/logo_16x16.png differ
diff --git a/assets/logo_256x256.png b/assets/logo_256x256.png
new file mode 100644
index 0000000..4dc515a
Binary files /dev/null and b/assets/logo_256x256.png differ
diff --git a/assets/logo_32x32.png b/assets/logo_32x32.png
new file mode 100644
index 0000000..d2292c7
Binary files /dev/null and b/assets/logo_32x32.png differ
diff --git a/assets/logo_48x48.png b/assets/logo_48x48.png
new file mode 100644
index 0000000..7820f15
Binary files /dev/null and b/assets/logo_48x48.png differ
diff --git a/assets/logo_512x512.png b/assets/logo_512x512.png
new file mode 100644
index 0000000..15feeb8
Binary files /dev/null and b/assets/logo_512x512.png differ
diff --git a/assets/logo_64x64.png b/assets/logo_64x64.png
new file mode 100644
index 0000000..69a438b
Binary files /dev/null and b/assets/logo_64x64.png differ
diff --git a/assets/logo_banner.svg b/assets/logo_banner.svg
new file mode 100644
index 0000000..211be86
--- /dev/null
+++ b/assets/logo_banner.svg
@@ -0,0 +1,54 @@
+
\ No newline at end of file
diff --git a/assets/logo_dark.svg b/assets/logo_dark.svg
new file mode 100644
index 0000000..49eafb9
--- /dev/null
+++ b/assets/logo_dark.svg
@@ -0,0 +1,43 @@
+
\ No newline at end of file
diff --git a/assets/logo_transparent.svg b/assets/logo_transparent.svg
new file mode 100644
index 0000000..121c66a
--- /dev/null
+++ b/assets/logo_transparent.svg
@@ -0,0 +1,41 @@
+
\ No newline at end of file
diff --git a/assets/wizard_header.bmp b/assets/wizard_header.bmp
new file mode 100644
index 0000000..680947d
Binary files /dev/null and b/assets/wizard_header.bmp differ
diff --git a/assets/wizard_sidebar.bmp b/assets/wizard_sidebar.bmp
new file mode 100644
index 0000000..13082af
Binary files /dev/null and b/assets/wizard_sidebar.bmp differ
diff --git a/assets/wizard_small.bmp b/assets/wizard_small.bmp
new file mode 100644
index 0000000..d9c7e1c
Binary files /dev/null and b/assets/wizard_small.bmp differ
diff --git a/compilation/assets/favicon.ico b/compilation/assets/favicon.ico
new file mode 100644
index 0000000..d8cfc0a
Binary files /dev/null and b/compilation/assets/favicon.ico differ
diff --git a/compilation/assets/logo_128x128.png b/compilation/assets/logo_128x128.png
new file mode 100644
index 0000000..83bd9d0
Binary files /dev/null and b/compilation/assets/logo_128x128.png differ
diff --git a/compilation/assets/logo_16x16.png b/compilation/assets/logo_16x16.png
new file mode 100644
index 0000000..f245889
Binary files /dev/null and b/compilation/assets/logo_16x16.png differ
diff --git a/compilation/assets/logo_32x32.png b/compilation/assets/logo_32x32.png
new file mode 100644
index 0000000..d2292c7
Binary files /dev/null and b/compilation/assets/logo_32x32.png differ
diff --git a/compilation/assets/logo_48x48.png b/compilation/assets/logo_48x48.png
new file mode 100644
index 0000000..7820f15
Binary files /dev/null and b/compilation/assets/logo_48x48.png differ
diff --git a/compilation/assets/logo_512x512.png b/compilation/assets/logo_512x512.png
new file mode 100644
index 0000000..15feeb8
Binary files /dev/null and b/compilation/assets/logo_512x512.png differ
diff --git a/compilation/assets/logo_64x64.png b/compilation/assets/logo_64x64.png
new file mode 100644
index 0000000..69a438b
Binary files /dev/null and b/compilation/assets/logo_64x64.png differ
diff --git a/compilation/assets/logo_banner.svg b/compilation/assets/logo_banner.svg
new file mode 100644
index 0000000..211be86
--- /dev/null
+++ b/compilation/assets/logo_banner.svg
@@ -0,0 +1,54 @@
+
\ No newline at end of file
diff --git a/compilation/assets/logo_dark.svg b/compilation/assets/logo_dark.svg
new file mode 100644
index 0000000..49eafb9
--- /dev/null
+++ b/compilation/assets/logo_dark.svg
@@ -0,0 +1,43 @@
+
\ No newline at end of file
diff --git a/compilation/assets/logo_transparent.svg b/compilation/assets/logo_transparent.svg
new file mode 100644
index 0000000..121c66a
--- /dev/null
+++ b/compilation/assets/logo_transparent.svg
@@ -0,0 +1,41 @@
+
\ No newline at end of file
diff --git a/compilation/generate_branding_assets.py b/compilation/generate_branding_assets.py
index 894021f..9981c81 100644
--- a/compilation/generate_branding_assets.py
+++ b/compilation/generate_branding_assets.py
@@ -1,7 +1,7 @@
"""
LOGAR Branding & Installer Graphics Generator
Generates clean, professional SVG, PNG, ICO, and BMP visual assets for
-LOGAR installers (Inno Setup & NSIS), application icons, and WebUI branding.
+LOGAR installers (Inno Setup & NSIS), application icons, root /assets library, and WebUI branding.
Zero external dependencies required (uses standard library zlib and struct).
"""
@@ -9,9 +9,15 @@ import os
import math
import zlib
import struct
+import shutil
-ASSETS_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "assets")
-os.makedirs(ASSETS_DIR, exist_ok=True)
+ROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+ROOT_ASSETS_DIR = os.path.join(ROOT_DIR, "assets")
+COMPILATION_ASSETS_DIR = os.path.join(ROOT_DIR, "compilation", "assets")
+LICENSING_ASSETS_DIR = os.path.join(ROOT_DIR, "LOGAR-LICENSING", "assets")
+
+for d in (ROOT_ASSETS_DIR, COMPILATION_ASSETS_DIR, LICENSING_ASSETS_DIR):
+ os.makedirs(d, exist_ok=True)
def create_bmp_24bit(width: int, height: int, pixel_func) -> bytes:
@@ -80,7 +86,7 @@ def create_png_rgba(width: int, height: int, pixel_func) -> bytes:
def draw_logo_rgba(x: int, y: int, w: int, h: int) -> tuple:
- """Renders a sleek modern cyberpunk hexagon shield and pulse log streams."""
+ """Renders a sleek modern hexagon shield and pulse log streams."""
nx = (x - w / 2) / (w / 2)
ny = (y - h / 2) / (h / 2)
dist = math.sqrt(nx * nx + ny * ny)
@@ -148,7 +154,7 @@ def draw_wizard_header_white_bgr(x: int, y: int, w: int, h: int) -> tuple:
"""
bg_r, bg_g, bg_b = 255, 255, 255
- # Position emblem cleanly on the left (center x = 30, center y = h / 2)
+ # Position emblem cleanly on the left (center x = 28, center y = h / 2)
icon_center_x = 28
icon_center_y = h / 2
icon_radius = 22
@@ -192,7 +198,7 @@ def draw_wizard_sidebar_bgr(x: int, y: int, w: int, h: int) -> tuple:
"""Renders 164x314 BMP sidebar graphic for NSIS / Inno Setup."""
t_y = y / h
- # Deep cyber navy to midnight blue vertical gradient
+ # Deep navy to midnight blue vertical gradient
r = int(10 * (1 - t_y) + 4 * t_y)
g = int(22 * (1 - t_y) + 12 * t_y)
b = int(48 * (1 - t_y) + 26 * t_y)
@@ -262,9 +268,13 @@ def generate_ico_file(png_images: list) -> bytes:
return header + bytes(entries) + b"".join(image_data_blocks)
-def generate_svg_logo() -> str:
+def generate_svg_logo(transparent_bg: bool = False) -> str:
"""Generates a high-quality SVG vector graphic for LOGAR."""
- return """