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

mindplug

v1.0.18

Published

Embeddings made easy with mindplug

Readme

Mindplug

Mindplug is the easiest solution to creating and managing embeddings. Add long term memory to your LLMs, perform semantic data analysis and easily filter data based on metadata. Connect your app to external web sources using our smart endpoint.

Install Mindplug

NPM:

npm install mindplug

yarn:

yarn add mindplug

Initialize Mindplug

Obtain an API key from Mindplug dashboard.

import Mindplug from 'mindplug';
const mindplug = new Mindplug({mindplugKey: <SAMPLE KEY>});

Store data

All storage of data requires a db and a collection.

Store text. Requires content

mindplug.store({
  db: "first database",
  collection: "any collection",
  content: "hello, sample text to store",
});

Store PDF file. Requires an object of type File under 20MB

mindplug.storePDF({
  db: "first database",
  collection: "any collection",
  file: <SAMPLE FILE>
});

Store Webpage. Requires the webpage url

mindplug.storeWeb({
  db: "first database",
  collection: "any collection",
  url: "https://mindplug.io"
});

Store audio. Requires a MP3 or WAV file under 20MB

// must pass an openaiKey to constructor
mindplug.storeAudio({
  db: "first database",
  collection: "any collection",
  file: <SAMPLE FILE> 
});

Storing - Advanced Techniques

A metadata of type JSON and a chunkSize of type number may also be passed to each storage function. Metadata is used to easily filter for data. Chunksize is used to split large data into smaller batches. By default the data is split in about 1024 character chunks.

mindplug.store({
  db: "first database",
  collection: "any collection",
  content: "hello, sample text to store",
  metadata: {
    purpose: "to learn"
  },
  chunkSize: 512
});

Query data

Semantic search. Search stored data by meaning of text.

mindplug.query({
  db: "first database",
  collection: "any collection",
  search: "What fruit is in the fridge?"
});

Query by vector ids.

mindplug.queryByIds({
  db: "first database",
  collection: "any collection",
  vectorIds: ["ID-1", "ID-2"]
});

Query by collection. Returns the recent 10 vectors from the collection.

mindplug.queryByCollection({
  db: "first database",
  collection: "any collection"
});

Query - Advanced Techniques

By default, mindplug returns the 3 best matches for the searched data. You can change this by passing a count parameter. You can also filter the stored data based on metadata by passing in a metadataFilters parameter.

mindplug.query({
  db: "first database",
  collection: "any collection",
  search: "What are the benefits of Solana blockchain?",
  metadataFilters: {
    genre: ["technology", "blockchain"]
  },
  count: 1
});

For more information on using metadataFilters, please see our API documentation

Delete data

Delete by vector ids.

mindplug.deleteByIds({
  db: "first database",
  collection: "any collection",
  vectorIds: ["ID-1", "ID-2"]
});

Delete by upload id. Upload id is returned every time new data is stored

mindplug.deleteByUploadId({
  db: "first database",
  collection: "any collection",
  uploadId: "UPLOAD-ID"
});

Delete collection. Also deletes all vectors stored within.

mindplug.deleteCollection({
  db: "first database",
  collection: "any collection"
});

Delete project. Also deletes all collections and vectors stored within.

mindplug.deleteProject({
  db: "first database"
});

List data

List Collections.

mindplug.listCollections({
  db: "first database"
});

List projects.

mindplug.listProjects();

Smart

Google search from select sources.

mindplug.searchWeb({
  search: "How to cook pasta?"
});

About

Mindplug is developed by the team at Bored Labs, the parent company of the team behind ExperAI, a chatbot application where you can interact with any AI expert instantly.

The experts of ExperAI use mindplug for long term memory and data analysis. We've proven to support production level applications with great reliability. Our goal is to provide the easiest solution to semantic search. To support our goal, we've also built a frontend app for Mindplug to allow users to interact with embeddings with no code. We keep it boring :)# mindplug-js-sdk