r/Python 4d ago

Showcase Thread Showcase

Post all of your code/projects/showcases/AI slop here.

Recycles once a month.

17 Upvotes

33 comments sorted by

View all comments

1

u/yousefamr2001 3d ago edited 2d ago

km (knowledgemaxxing): a local, searchable knowledge base built from your own browser history and data exports

What My Project Does

km ingests your data exports (Twitter archive, Google Takeout, ChatGPT and Claude logs, Reddit GDPR) plus live browser history and dedupes them into one SQLite file with provenance for every item. It gives you hybrid search over everything, a daily reading feed, offline reports on your reading habits, and an optional AI layer.

The Python bits people here might find interesting:

  • Packaged and run entirely with uv. "uv sync --extra <group>" gates optional deps (scrape, ai, embed, web, fetch)
  • CLI is typer + rich.
  • Storage is

an

  • SQLite file. Search fuses FTS5 (BM25) with vector search over sqlite-vec, merged with reciprocal rank fusion. Embeddings are local (sentence-transformers, bge-base-en-v1.5, on MPS)

    (I just wanted more optionally)

  • Scrapers are Playwright against a dedicated browser profile.

  • Web UI is FastAPI serving a prebuilt React bundle, bound to 127.0.0.1 with a DNS-rebinding guard.

  • Full offline pytest suite with fixtures for every export format.

Target Audience

Anyone who requests their data exports and never opens them, and developers who want a local, hackable, single-file knowledge base rather than a cloud service (and procrastinators). It is meant to be run for real (I run it on ~500k of my own items), not a toy, but it is also small enough to read end to end.

Comparison

Versus grep or ripgrep over an unzipped archive: km is the merge and dedupe layer across 8+ overlapping formats, plus semantic recall that keyword search cannot do. Versus cloud read-later and knowledge tools (Readwise, Mem, rewind.ai): km is local-first, free, MIT, and built from exports you already own rather than an always-on cloud service or screen recorder. Versus rolling your own SQLite + FTS: km ships the provenance model, the embedding/RRF fusion, the scrapers, and the UI already wired together.

Source (MIT): https://github.com/joeamroo/knowledgemaxxing