
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
@pulse-circle/core
Advanced tools
Platform-agnostic core for Pulse analytics SDKs: persistent ordered event queue, idempotent delivery, identity. No DOM or React Native APIs.
The platform-agnostic engine behind the Pulse SDKs. It implements the Pulse wire protocol — the persistent ordered queue, batching, idempotent retry, and identity lifecycle — with no DOM and no React Native APIs. Everything platform-specific (storage, transport, clock) is injected.
Most apps should install @pulse-circle/web
or @pulse-circle/react-native
instead. Use @pulse-circle/core directly only when porting Pulse to a new
JavaScript runtime.
npm install @pulse-circle/core
PulseClient owns the whole protocol state machine. You give it four seams:
import { PulseClient, DEFAULT_ENDPOINT, SDK_VERSION } from '@pulse-circle/core';
const client = new PulseClient({
apiKey: 'pk_...',
defaults: {
endpoint: DEFAULT_ENDPOINT,
flushAt: 20,
flushIntervalMs: 30_000,
maxQueueEvents: 5_000,
debug: false,
},
sdk: { name: 'pulse-myplatform', version: SDK_VERSION },
transport, // PulseTransport: how requests go out
clock, // PulseClock: now() + timer scheduling
keyValueStorage, // PulseKeyValueStorage: identity persistence
queueStorage, // PulseQueueStorage: the durable event queue
});
client.track('event', { key: 'value' });
client.identify('user_42');
client.reset();
client.flush();
Because time and I/O are injected, the client is fully deterministic under test — no real timers, no real network.
@pulse-circle/core/testing ships the test doubles and the conformance fixture
runner used by every platform:
import {
MockTransport,
VirtualClock,
InMemoryKeyValueStorage,
InMemoryQueueStorage,
runFixture,
} from '@pulse-circle/core/testing';
runFixture(fixture, createClient) drives a client through a protocol
scenario (see
FIXTURES.md)
and asserts the exact HTTP requests it produces. Porting Pulse to a new
runtime means: implement the four seams, then pass every fixture.
MIT © Pulse Circle Studio
FAQs
Platform-agnostic core for Pulse analytics SDKs: persistent ordered event queue, idempotent delivery, identity. No DOM or React Native APIs.
The npm package @pulse-circle/core receives a total of 0 weekly downloads. As such, @pulse-circle/core popularity was classified as not popular.
We found that @pulse-circle/core demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.