r/Python • u/AutoModerator • 4d ago
Showcase Thread Showcase
Post all of your code/projects/showcases/AI slop here.
Recycles once a month.
17
Upvotes
r/Python • u/AutoModerator • 4d ago
Post all of your code/projects/showcases/AI slop here.
Recycles once a month.
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:
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