whatisgithub

What is snarevec?

adithyaa71/snarevec — explained in plain English

Analysis updated 2026-05-18

0PythonAudience · developerComplexity · 4/5Setup · moderate

In one sentence

A browser extension plus local daemon that captures web pages, embeds them on your machine, and feeds vectors into a self-hosted Qdrant RAG store.

Mindmap

mindmap
  root((SnareVec))
    What it does
      Captures web pages
      Embeds locally
      Feeds self-hosted RAG
    Tech stack
      Python
      FastAPI
      Qdrant
    Use cases
      Build personal knowledge base
      Local embedding pipeline
      Remote Qdrant import
    Audience
      Developers
      Researchers
    Backends
      fastembed
      Ollama
      OpenAI compatible

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Capture web pages while browsing and automatically embed them into a local RAG knowledge base.

USE CASE 2

Feed captured page vectors into a self-hosted Qdrant server or an embedded Qdrant instance on a remote machine.

USE CASE 3

Build a personal research archive that a self-hosted retrieval-augmented generation system can search.

What is it built with?

PythonFastAPIQdrantfastembedChrome Extension

How does it compare?

adithyaa71/snarevec0xallam/my-recipe0xhassaan/nn-from-scratch
Stars00
LanguagePythonPythonPython
Last pushed2022-11-22
MaintenanceDormant
Setup difficultymoderatemoderatemoderate
Complexity4/52/54/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Python 3.10+ for the daemon plus loading the extension unpacked in a Chromium browser.

The README does not state license terms.

So what is it?

SnareVec is a tool for capturing web pages you're reading and turning them into searchable vector data for your own self-hosted retrieval system, known as RAG. It has two parts: a browser extension that lets you click a button on any page to capture it, and a local background program called a daemon that does the actual work of extracting text, splitting it into chunks, generating embeddings, and storing them. This split exists because browser extensions are sandboxed and cannot run AI models, access arbitrary files, or connect to remote servers on their own, so the daemon handles everything that requires real system access. The daemon runs entirely on your own machine and listens only on the local network address, requiring a security token pasted from its startup message into the extension before anything can be sent to it. On first launch it sets up a working default configuration using a local embedding model, so pages can be captured immediately without further setup. Running the daemon automatically at login is optional and left entirely up to the user, with instructions provided for Windows, macOS, and Linux. Capturing a page happens through the extension's popup, where a profile is chosen, optional tags are added, and the page is sent through the extract, chunk, embed, and store pipeline. Failed captures are not lost, they land in a retry queue instead. The tool supports several different backends for generating embeddings, including a built-in local option, a local Ollama server, and any service exposing an OpenAI-compatible embeddings endpoint, along with several places to store the resulting vectors, including local files, a remote server over SSH, or directly into a Qdrant vector database server. A companion script allows vectors captured locally to be moved onto a remote machine running an embedded, single-process copy of Qdrant, with the destination service required to be fully stopped during the import and the script validating that the incoming data matches the destination's model and configuration before proceeding. The project enforces strict consistency rules, such as never mixing vectors from different embedding models within the same collection, since doing so would make search results meaningless.

Copy-paste prompts

Prompt 1
Walk me through setting up the SnareVec daemon and connecting the browser extension to it.
Prompt 2
Explain why the daemon requires a token and only listens on localhost.
Prompt 3
Show me how to move captured vectors to a remote embedded Qdrant instance using the import script.
Prompt 4
Help me choose between the fastembed, Ollama, and OpenAI-compatible embedding backends for this project.

Frequently asked questions

What is snarevec?

A browser extension plus local daemon that captures web pages, embeds them on your machine, and feeds vectors into a self-hosted Qdrant RAG store.

What language is snarevec written in?

Mainly Python. The stack also includes Python, FastAPI, Qdrant.

What license does snarevec use?

The README does not state license terms.

How hard is snarevec to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is snarevec for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.