Advanced Client Metadata Collector helps OutSystems developers gather reliable client-side metadata to understand end-user environments, improve diagnostics, and tailor application experiences dynamically. This component uses modern browser APIs to extract metadata about the user's browser, device, system capabilities, network, and runtime context—all through a reusable Reactive block.
Browser name & version
User agent (full string)
Preferred language & locale
Online/offline status
Cookies enabled
Platform details
Device type (Mobile / Tablet / Desktop via heuristic)
Approx device RAM bucket (navigator.deviceMemory)
navigator.deviceMemory
CPU core count (hardwareConcurrency)
hardwareConcurrency
Touch capability
Vendor & product info (where supported)
Screen width & height
Available width & height
Current viewport size
Pixel ratio
Orientation
Timezone
Local time offset
Color depth
Browser security context (https / localhost)
? Simple drag-and-drop block integration? No external libraries or dependencies? Instant event-driven callback using Block Event? Strong browser support (Chrome, Edge, Firefox, Safari)? Extensible metadata object—add your own custom fields? Useful for analytics, logging, personalization & debugging
?? Security auditing & risk scoring?? Fraud detection (unexpected device/browser)?? Adaptive UI based on device capabilities?? Logging and telemetry enrichment?? Debugging user issues in production?? Performance tuning for low-powered devices?? Enterprise observability dashboards
Reactive Block: BrowserInfoCollector
JavaScript metadata extraction script
Output event for delivering results
Demo screen showing collected metrics
Due to browser security standards:
Exact RAM cannot be retrieved — only an approximate bucket (max value usually 8).
CPU speed is not available in browsers.
Some device fields may return empty due to API restrictions.