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