diff --git a/services/web-ui/public/icons.jsx b/services/web-ui/public/icons.jsx
new file mode 100644
index 0000000..ad63c69
--- /dev/null
+++ b/services/web-ui/public/icons.jsx
@@ -0,0 +1,88 @@
+// icons.jsx - inline SVG icon set (lucide-style stroke icons)
+
+const ICONS = {
+ home: ,
+ library: <>>,
+ folder: ,
+ upload: <>>,
+ record: <>>,
+ capture: <>>,
+ jobs: <>>,
+ editor: <>>,
+ users: <>>,
+ token: <>>,
+ container: <>>,
+ cluster: <>>,
+ settings: <>>,
+ search: <>>,
+ bell: <>>,
+ plus: <>>,
+ chevron: ,
+ chevronDown: ,
+ more: <>>,
+ play: ,
+ pause: <>>,
+ film: <>>,
+ video: <>>,
+ audio: <>>,
+ image: <>>,
+ download: <>>,
+ share: <>>,
+ link: <>>,
+ check: ,
+ x: ,
+ filter: ,
+ sort: <>>,
+ grid: <>>,
+ list: <>>,
+ comment: ,
+ clock: <>>,
+ layers: <>>,
+ gpu: <>>,
+ cpu: <>>,
+ hdd: <>>,
+ sun: <>>,
+ moon: ,
+ signal: <>>,
+ zap: ,
+ layout: <>>,
+ sliders: <>>,
+ panel: <>>,
+ alert: <>>,
+ refresh: <>>,
+ trash: <>>,
+ copy: <>>,
+ eye: <>>,
+ arrowRight: ,
+ arrowLeft: ,
+ externalLink: <>>,
+ monitor: <>>,
+ diamond: ,
+ power: <>>,
+ globe: <>>,
+ package: <>>,
+ proxy: <>>,
+};
+
+function Icon({ name, size = 16, className, style }) {
+ const path = ICONS[name];
+ if (!path) return null;
+ return (
+
+ );
+}
+
+window.Icon = Icon;