Socket
Book a DemoInstallSign in
Socket

@posthog/plugin-contrib

Package Overview
Dependencies
Maintainers
14
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install
Package version was removed
This package version has been unpublished, mostly likely due to security reasons

@posthog/plugin-contrib

Contributed utilities for plugin authors

unpublished
Source
npmnpm
Version
0.0.6
Version published
Weekly downloads
1.8K
-1.39%
Maintainers
14
Weekly downloads
 
Created
Source

PostHog Plugin Contrib

npm package MIT License

This project contains shared code that PostHog plugin authors can use.

Code imported from this package runs outside the plugin virtual machine, and can thus use timeouts and other NodeJS features.

Included in this package

Batch processing

import { createBuffer } from '@posthog/plugin-contrib'
import fetch from 'node-fetch'

export function setupPlugin({ global }) {
    global.buffer = createBuffer({
        limit: 10 * 1024 * 1024, // 10 MB
        timeoutSeconds: 10 * 60, // 10 minutes
        onFlush: async (batch) => {
            const resp = await fetch('https://httpbin.org/post', {
                method: 'post',
                body: JSON.stringify(batch),
                headers: { 'Content-Type': 'application/json' },
            })
            const json = await resp.json()
            if (!json.success) {
                // retry somehow?
            }
        },
    })
}

export function teardownPlugin({ global }) {
    global.buffer.flush()
}

export function processEvent(event, { config, global }) {
    global.buffer.add(event, JSON.stringify(event).length) // add(object, points)
    return event
}

Releasing a new version

It's magic! Just bump up version in package.json on the main branch and the new version will be published automatically, on GitHub and on npm. Courtesy of GitHub Actions.

Questions?

Join our Slack community.

FAQs

Package last updated on 24 Nov 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts