OpenViSTAI · Agents · Blockchain · Crypto
Menu
RAG & Knowledge Systems

Mememo

Mememo is a TypeScript JavaScript library that adapts HNSW approximate-nearest-neighbor search to browser environments. It creates vector indexes, supports batch insertion and nearest-neighbor queries, and uses web technologies including IndexedDB and Web Workers. The repository also documents Node.js support and includes a RAG Playground example.

Independent OpenViST project profile, based on linked sources.

Mememo — OpenViST project profile in RAG & Knowledge Systems.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Mememo when an application needs approximate-nearest-neighbor retrieval over supplied vectors in a browser or Node.js project, particularly as the retrieval component of a RAG workflow.

Who it is for

  • Developers adding vector retrieval to browser-based RAG applications.
  • Teams building interactive document or embedding-search interfaces.
  • Researchers prototyping on-device retrieval and personalized content workflows.

Documented uses

  • Create an HNSW vector index and insert records in batches.
  • Query an index for nearest neighbors and receive their keys and distances.
  • Add a vector-retrieval component to a RAG or interactive search application.
  • Explore a local RAG Playground example with browser-based explainers.
Before you choose

Requirements & limits

The repository identifies the software as available under the MIT License and documents installation through npm.

  • The documented interface centers on HNSW indexing, batch insertion and nearest-neighbor queries.
  • The browser implementation uses technologies including IndexedDB and Web Workers; Node.js is also documented.
  • The library performs retrieval over supplied vectors; the README's example does not document embedding generation.
  • Image-vector search is a plausible adaptation, but the repository material provided does not show a specific image-search implementation.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Install Mememo and query a vector index

Set up the package and follow the documented browser vector-index workflow through a nearest-neighbor query.

Before you start

  • A JavaScript or TypeScript project using npm
  • Vector keys and corresponding numeric vector values
  • A numeric query vector and the number of neighbors to request

Steps

  1. Install the package with the command below.

    Documented command
    npm install mememo
  2. Import HNSW from mememo and create an index with a distance function such as cosine.

  3. Pass keys and vector values to index.bulkInsert(keys, values).

  4. Call index.query(query, k) to retrieve keys and distances for the nearest neighbors.

Expected outcome

An HNSW vector index populated with supplied vectors and a query result containing neighbor keys and distances.

Guide limitations

  • The guide covers indexing and retrieval, not embedding generation or the complete RAG application.
  • The README gives example variables rather than a dataset or production configuration.
Source-based practical guide

Start the RAG Playground development example

Install and launch the repository’s documented RAG Playground example locally.

Before you start

  • A local clone or download of the Mememo repository
  • npm

Steps

  1. Clone or download the repository.

  2. Change into ./examples/rag-playground.

  3. Run the command below in that directory.

    Documented command
    npm install
  4. Run the command below and open localhost:3000.

    Documented command
    npm run dev

Expected outcome

The documented local development page, described by the README as showing three explainers in the browser.

Guide limitations

  • This is a development setup for the example application, not instructions for deploying it.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
poloclub/mememo · Official homepage title · retained in its source language