browser-env-reporter
v1.0.0
Published
A tool library for collecting and reporting browser environment information
Maintainers
Readme
browser-env-reporter
A tool library for collecting and reporting browser environment information.
Installation
npm install browser-env-reporterFeatures
- Collect browser information (userAgent, platform, language, etc.)
- Collect screen information (resolution, color depth, etc.)
- Collect window information (viewport size, scroll position, etc.)
- Collect network information (effectiveType, downlink, etc.)
- Collect device information (deviceMemory, hardwareConcurrency, etc.)
- Support for custom data attachment
- TypeScript support
Usage
ES Modules
import { createReporter, collectEnvironmentData } from 'browser-env-reporter';
const reporter = createReporter();
const report = reporter.collect();
console.log(report);CommonJS
const { createReporter, collectEnvironmentData } = require('browser-env-reporter');
const report = collectEnvironmentData();
console.log(report);Collect Environment Data
import { collectEnvironmentData } from 'browser-env-reporter';
const report = collectEnvironmentData();
console.log(report.browser);
console.log(report.screen);
console.log(report.window);
console.log(report.network);
console.log(report.device);Use Reporter Class
import { BrowserEnvReporter } from 'browser-env-reporter';
const reporter = new BrowserEnvReporter({
includeNetwork: true,
includeDevice: true,
});
reporter.collect();
const lastReport = reporter.getLastReport();
const json = reporter.toJSON();Options
| Option | Type | Default | Description | |--------|------|---------|-------------| | includeNetwork | boolean | true | Include network information | | includeDevice | boolean | true | Include device information | | customData | object | undefined | Custom data to attach to report |
Report Structure
interface EnvironmentReport {
timestamp: number;
browser: BrowserInfo;
screen: ScreenInfo;
window: WindowInfo;
network?: NetworkInfo;
device?: DeviceMemoryInfo;
referrer?: string;
currentUrl?: string;
[key: string]: unknown;
}License
MIT
