Profile-based ranking
Three built-in profiles tune fuzzy cutoff, score scaling, and candidate limits. Switch at runtime without rebuilding the index.
Glyph Core Engine
glyph-s
Offline-first full-text ranking with profile tuning, extended query grammar, and a clean API — powering Obsidian plugins, web apps, and future Glyph products.
A staged refactor that keeps backward compatibility while adding performance profiles, richer queries, and a modern engine API.
Three built-in profiles tune fuzzy cutoff, score scaling, and candidate limits. Switch at runtime without rebuilding the index.
High-level API: pass items once, get a reusable engine with .search(query). Includes buildIndex() for pre-computed text bags.
Quoted phrases, negation (-term), OR groups ((a OR b)), and structured filters: path:, tag:, type:, page:, app:.
Token-variant expansion and snippet generation are memoized per profile. Diagnostics hook reports candidate counts and elapsed time.
| Profile | Fuzzy cutoff | Score scale | Max candidates | Use case |
|---|---|---|---|---|
legacy | 0.40 | 1.00 | 8 000 | Pre-2.7 compatibility |
balanced | 0.48 | 1.08 | 4 000 | Daily use (default) |
max-quality | 0.35 | 1.16 | 9 000 | Maximum recall |
Compose precise searches with filters, phrases, and boolean groups.
Double-quoted strings match as contiguous text: "meeting notes"
Prefix with - to filter out: -archive
Parentheses with OR: (task OR todo)
ESM import for modern apps; CJS bundle for Obsidian plugins and Node.
One engine, multiple delivery formats.
CJS bundle in vendor/engine.js. Full vault indexing with keyboard navigation and snippet previews.
glyph-search-2.7.js exposes globalThis.GlyphS for browser-side search in Floke products.
lib/index.js exports the full API for Node, bundlers, and custom integrations.
Search and metadata intelligence, built to work together.