search for standard sites pub-search.waow.tech
search zig blog atproto
12
fork

Configure Feed

Select the types of activity you want to include in your feed.

Zig 52.9%
HTML 16.5%
Python 13.2%
JavaScript 4.1%
CSS 1.9%
Dockerfile 0.7%
Just 0.4%
Other 10.2%
58 7 0

Clone this repository

https://tangled.org/zzstoatzz.io/leaflet-search https://tangled.org/did:plc:xbtmt2zjwlrfegqvch7fboei/leaflet-search
git@tangled.org:zzstoatzz.io/leaflet-search git@tangled.org:did:plc:xbtmt2zjwlrfegqvch7fboei/leaflet-search

For self-hosted knots, clone URLs may differ based on your setup.

Download tar.gz
README.md

leaflet-search#

by @zzstoatzz.io

search for leaflet.

live: leaflet-search.pages.dev

how it works#

  1. tap syncs leaflet content from the network
  2. backend indexes content into SQLite FTS5 via Turso, serves search API
  3. site static frontend on Cloudflare Pages

MCP server#

search is also exposed as an MCP server for AI agents like Claude Code:

claude mcp add-json leaflet '{"type": "http", "url": "https://leaflet-search-by-zzstoatzz.fastmcp.app/mcp"}'

see mcp/README.md for local setup and usage details.

api#

GET /search?q=<query>&tag=<tag>  # search with query, tag, or both
GET /tags                        # list all tags with counts
GET /stats                       # document/publication counts
GET /health                      # health check

search returns three entity types: article (document in a publication), looseleaf (standalone document), publication (newsletter itself). tag filtering applies to documents only.

stack#

  • Fly.io hosts backend + tap
  • Turso cloud SQLite
  • Tap syncs leaflet content from ATProto firehose
  • Zig HTTP server, search API, content indexing
  • Cloudflare Pages static frontend