npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@sync-spider/sdk

v2.1.5

Published

### NPM

Downloads

57

Readme

Installation

NPM

# install sync spider sdk to your project
npm install @sync-spider/sdk --save

Inject script tag

<head>
	<!-- SyncSpider SDK -->
	<script src="https://app.syncspider.com/js/sync-spider-sdk.js"></script>
</head>

And then anywhere in your app you can access SyncSpider:

Usage

Create/edit connection

import { createConnection, editConnection } from '@sync-spider/sdk';

// For creation you need connection code
createConnection({
	token: 'YOUR_TOKEN',
	code: 'CONNECTION_CODE',
})
	.then((result) => {
		// Result is an object that contains
		// id, name, and other useful info
	})
	.catch((error) => {
		// Handle errors
	});

// For edit you need connection id
editConnection({
	token: 'YOUR_TOKEN',
	connectionID: 'CONNECTION_ID',
})
	.then((result) => {
		// Result is an object that contains
		// id, name, and other useful info
	})
	.catch((error) => {
		// Handle errors
	});

Open source configuration

import { openSourceConfig } from '@sync-spider/sdk';

openSourceConfig({
	token: 'YOUR_TOKEN',
	projectID: PROJECT_ID,
	taskID: TASK_ID,

	// Optional
	queryParams: {
		vendor: '1',
	},
})
	.then((result) => {
		// Result is boolean
	})
	.catch((error) => {
		// Handle errors
	});

Open destination configuration

import { openDestinationConfig } from '@sync-spider/sdk';

openDestinationConfig({
	token: 'YOUR_TOKEN',
	projectID: PROJECT_ID,
	taskID: TASK_ID,
	destinationID: DESTINATION_ID,

	// Optional
	queryParams: {
		vendor: '1',
	},
})
	.then((result) => {
		// Result is boolean
	})
	.catch((error) => {
		// Handle errors
	});

Apply design changes to the app

Each function you call from SDK you can pass down additional properties to customize the look and feel.

openSourceConfig({
	// Styles - provide hex color without hashtag
	colorBackground: 'HEX_COLOR',
	colorBackgroundContent: 'HEX_COLOR',
	colorForeground: 'HEX_COLOR',
	colorForegroundContent: 'HEX_COLOR',
	colorForeground1: 'HEX_COLOR',
	colorForegroundContent1: 'HEX_COLOR',
	colorPrimary: 'HEX_COLOR',
	colorPrimaryContent: 'HEX_COLOR',
	colorPrimaryHover: 'HEX_COLOR',
	colorPrimaryHoverContent: 'HEX_COLOR',

	// Image - this will be used instead of SyncSpider default image
	defaultImage: 'URL_TO_DEFAULT_IMAGE',

	// Labels - customize button labels
	submitLabel: 'Confirm',
	cancelLabel: 'Cancel',
});

Contributing

Requirements

  • NodeJS 14+ (install via nvm)

Inside root directory create .env.local file and inside it copy the stuff from .env file This file will not get into git and you can always change env variables.

npm run dev

This will serve the app on your local machine on http://localhost:3000 or other port if 3000 is busy.

If you want to change baseURL without manually running development mode you can pass baseURL:

import { createConnection } from '@sync-spider/sdk';

// This is useful only during development
createConnection({
	baseURL: 'YOUR_URL',
});

Change env variables

If you want to change some variables refer to .env file. Do know that .env.production is for production build.

Publish to npm

Make sure to bump the version inside package.json file. We follow semantic versioning.

# Build the SDK, compiled files will be inside dist directory
npm run build

# Before publish you need to login to your account
npm publish