This document details the browsers, frameworks, build tools, and related limitations supported by Web RUM SDK, helping you evaluate SDK applicability in your target environment.
Supported Browsers
| Browser | Desktop | Mobile | Min Version | Notes |
|---|---|---|---|---|
| Chrome | ✅ | ✅ | 63+ | Full feature support |
| Firefox | ✅ | - | 67+ | Some features limited (see below) |
| Safari | ✅ | ✅ | 12.1+ | Some features limited (see below) |
| Edge | ✅ | - | 79+ | Chromium-based version |
| Opera | ✅ | - | 50+ | Full feature support |
| Internet Explorer | ❌ | - | - | Not supported |
Browser Feature Compatibility
The following table details SDK feature support across browsers:| Feature | Chrome | Firefox | Safari | Edge | Chrome Android | Safari iOS | Opera |
|---|---|---|---|---|---|---|---|
| SDK Loading | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SDK Initialization | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RUM Data Reporting | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Page Hidden Flush | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Console Error Capture | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Runtime Error Capture | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| CSP Violation Detection | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Browser Intervention Detection | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
| Auto Action Tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Custom Action Tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Long Task Detection | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
| Distributed Tracing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Route Change Tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Page Load Time | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Resource Performance | ✅ | ✅ | ⚠️ (1) | ✅ | ✅ | ⚠️ (1) | ✅ |
| Navigation Performance | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Web Vitals | ✅ | ⚠️ (2) | ⚠️ (2) | ✅ | ✅ | ⚠️ (2) | ✅ |
| FCP (First Contentful Paint) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
- Resource size information unavailable
- Only FID (First Input Delay) metric supported
Framework Compatibility
JavaScript Frameworks
React
Supports React 16.8+ (Hooks), auto tracking ✅
Vue.js
Supports Vue 2.x and Vue 3.x, auto tracking ✅
Angular
Supports Angular 12+, auto tracking ✅
Next.js
Supports SSR and client-side rendering, auto tracking ✅
Nuxt.js
Supports SSR and client-side rendering, auto tracking ✅
Svelte
Requires additional configuration for auto tracking ⚠️
Build Tools
| Tool | Support Status | Notes |
|---|---|---|
| Webpack | ✅ | Supports all major versions (4.x, 5.x) |
| Vite | ✅ | Recommended |
| Rollup | ✅ | Full support |
| Parcel | ✅ | Full support |
| esbuild | ✅ | Full support |
| Turbopack | ✅ | Experimental support |
Module Systems
| Module System | Support Status | Notes |
|---|---|---|
| ES Module (ESM) | ✅ | Recommended |
| CommonJS (CJS) | ✅ | Full support |
| UMD | ✅ | Suitable for direct browser import |
Network Request Library Compatibility
| Library/API | Auto Tracking | Manual Tracking | Notes |
|---|---|---|---|
| Fetch API | ✅ | ✅ | Requires auto tracking configuration enabled |
| XMLHttpRequest | ✅ | ✅ | Requires auto tracking configuration enabled |
| Axios | ✅ | ✅ | Auto tracking via interceptors |
| jQuery.ajax | ⚠️ | ✅ | Based on XMLHttpRequest, requires configuration |
Web API Dependencies
The SDK depends on the following Web APIs. Please ensure target browsers support them:Required APIs
| API | Purpose | Fallback |
|---|---|---|
navigator.sendBeacon | Send data on page unload | Uses Fetch API |
fetch | Data reporting | None |
Promise | Async handling | None |
JSON | Data serialization | None |
Optional APIs
| API | Purpose | Impact When Missing |
|---|---|---|
PerformanceObserver | Performance monitoring | Some performance metrics unavailable |
PerformanceNavigationTiming | Navigation performance data | Cannot get navigation performance metrics |
PerformanceResourceTiming | Resource loading performance data | Cannot get resource performance metrics |
IntersectionObserver | Element visibility detection | Some user behavior tracking affected |
MutationObserver | DOM change monitoring | Some auto tracking features affected |
PerformanceLongTaskTiming | Long task detection | Cannot detect long tasks |
visibilitychange event | Page visibility change detection | Some session tracking features affected |
TypeScript Support
| TypeScript Version | Support Status | Notes |
|---|---|---|
| 4.0+ | ✅ | Complete type definitions provided |
| 3.8 - 3.9 | ⚠️ | Basic support, some types limited |
| < 3.8 | ❌ | Not supported |
.d.ts), supporting IntelliSense and type checking.
Content Security Policy (CSP)
If your website uses CSP, add the following to your CSP policy:CSP Configuration
If using CDN integration, also add
https://static.flashcat.cloud to script-src.Privacy and Security
Cookie Usage
The SDK may use the following storage types:| Storage Type | Purpose | Required |
|---|---|---|
| localStorage | Session state persistence | Optional |
| sessionStorage | Temporary session data | Optional |
| Cookie | User identification (configurable) | Optional |
SameSite Cookie
The SDK usesSameSite=Lax policy by default, compatible with modern browser privacy requirements.
Known Limitations
Safari Limitations
Safari Limitations
| Limitation | Description |
|---|---|
| Long Task Detection | Safari doesn’t support Long Tasks API |
| Web Vitals | Only FID supported, CLS and LCP full measurement not supported |
| Resource Size Information | Some resource size information may be inaccurate |
| Data Send on Page Hidden | iOS Safari cannot guarantee immediate data send when page is hidden |
Firefox Limitations
Firefox Limitations
| Limitation | Description |
|---|---|
| Long Task Detection | Firefox doesn’t support Long Tasks API |
| Browser Intervention Detection | Firefox doesn’t support Intervention API |
| Web Vitals | Only FID supported |
Mobile Browser Limitations
Mobile Browser Limitations
- Background Running Restrictions - Mobile browsers may pause JavaScript execution when in background
- Memory Limitations - Mobile device memory constraints may affect data caching capability
- Network Limitations - Unstable mobile networks may cause data reporting delays
Single Page Applications (SPA)
Single Page Applications (SPA)
- Route change tracking configuration needs to be enabled
- Some framework routing libraries require additional configuration
- Recommend manually calling
startViewmethod to track route changes
Performance Impact
FlashCat Web SDK is designed to be lightweight with minimal impact on webpage performance:- SDK Size: ~30 KB (~10 KB gzipped)
- Runtime Memory Usage: < 2 MB
- CPU Usage: < 1%
- First Load Impact: < 50ms
Update Strategy
- Major Version Updates: May contain breaking changes, code adjustments required
- Minor Version Updates: New features, backward compatible
- Patch Version Updates: Bug fixes, fully backward compatible
Minimum Deployment Requirements
To ensure the SDK works properly, please ensure:-
Browser Versions:
- Chrome 63+
- Firefox 67+
- Safari 12.1+
- Edge 79+
- JavaScript Support: ES6+ (ES2015)
-
Required Web APIs:
fetchAPIPromiseJSON
-
Network Access: Application needs to access
https://rum-intake.flashcat.cloudfor data reporting - HTTPS: Recommended to use in HTTPS environment for full feature support
Related Documentation
SDK Integration Guide
Learn how to integrate the SDK
Advanced Configuration
Learn about advanced SDK configuration options
Data Collection
Learn what data the SDK collects