macOS 11+ / Apple Silicon & Intel / Native & signed

The launcher
that stays sharp
on a million files.

Native file & app search for macOS, built around one idea — you should never wait for an index.

One-time purchase · Free updates in 1.x · 30-day refund

global
Enter open

Live preview — try typing readme, ^src, or click a slot. to navigate, to open.

200ms Cold start to first search
(snapshot load)
3–5s Full walk of ~1M entries
(getattrlistbulk)
<250ms FS change to live result
(FSEvents incremental)
~50MB App disk footprint
(plus index snapshot)

01 — How it feels

Type four characters.
Get the thing you wanted.

^proj

Prefix

Only match things whose name starts with your query — no fuzzy noise, no middle-of-string surprises.

readme$

Suffix

End-anchored. .md$, .pdf$, report$ — extensions and conventional endings at the end of a name.

'snappy

Exact substring

Disable fuzzy for this atom. Bring back a specific string, verbatim, in a sea of near-misses.

!test

Exclude

Subtract matches. Combine with others: ^src .rs$ !test — Rust source outside test files.

Atoms are whitespace-separated and combine with AND. Smart case — case-insensitive unless you type uppercase. Unicode-aware normalization, so café matches cafe.

02 — Features

Every decision, in service
of a faster keystroke.

01

Tier-based ranking.
Deterministic. Inspectable.

Exact name wins over prefix, which wins over word-boundary, which wins over fuzzy. Package-manager caches (node_modules, .bun/install, .m2/repository) are auto-demoted; common user extensions (.pdf, .py, .app) are auto-promoted. A launched-often fuzzy match never beats an un-launched prefix match.

exactprefixword boundaryfuzzy
02

Frecency that
survives restarts.

Files and apps you launch more often rank higher within their tier. State persists in SQLite alongside your settings. Open ~/Projects/bar ten times today and it's at the top tomorrow — until your habits change.

project-phoenix
README.md
settings.json
scratch.txt
03

Ten quick-launch slots.
One keystroke each.

Assign ten apps to ⌥1 through ⌥0. Drag to reorder. ⌘← / ⌘→ cycles through slots whose app is currently running — flip between open apps without reaching for the mouse. Modifiers are independently configurable.

+
1234567890
04

Folder scope
with a breadcrumb.

Hit on a folder to scope in; backs out. A 50-level breadcrumb remembers the query at each level, so you can drill down and pop back without re-typing. Hidden-file visibility is per-scope — ~/.config settings stay hidden at home, but appear once you explicitly scope into it.

~ Projects snappy src-tauri
05

Lives in the menu bar.
Summoned, never in the way.

Global hotkey — default ⌥ Space, configurable. The window hides itself the moment you open a result. Tray icon, autostart at login, and a conflict banner if you try to steal Spotlight's ⌘ Space before clearing it in System Settings.

06

Incremental.
No re-scan, ever.

Filesystem changes — including app installs and removals — reflect within ~250ms via FSEvents. The index walker uses getattrlistbulk to combine directory iteration and stat() into a single syscall, so a full walk of ~1M entries finishes in 3–5 seconds. You never restart to pick up a new file.

watching

03 — Under the hood

Not a database.
Not a daemon.

Snappy is a signed native macOS app built in Rust. It walks your home directory with getattrlistbulk, serializes the index with bincode, and serves matches from memory through a tier-packed scoring function that fits five ranking signals into a single 32-bit integer. A descending sort is O(N log N), strictly lexicographic, end of story.

No background services. No cloud. No analytics. No re-indexing at 3 AM. When you're not summoning it, it's a small process in the menu bar watching FSEvents.

Language
Rust + React (Tauri)
Walker
getattrlistbulk, parallel
Index
in-memory, ~150-200 MB
snapshot on disk
Watcher
notify + FSEvents
Ranking
packed u32, 5 signals
Fuzzy
nucleo (same as Helix)
Persistence
SQLite · settings JSON
Network
none

04 — Pricing

One price.
No subscription.

Snappy for macOS

$ 29 once
  • Perpetual license for the 1.x line
  • Free updates within 1.x
  • Use on every Mac you own
  • 30-day money-back guarantee
  • Signed & notarized — no Gatekeeper dance
Buy Snappy

Checkout by Stripe. You get a download link and license key by email.

Not on the Mac App Store? Snappy needs a global hotkey and full-disk access to index your home — two things App Store sandboxing rules out. So we sell it direct.

05 — Requirements

What you need.

macOS
11 Big Sur or later
Chip
Apple Silicon or Intel
Disk
~50 MB + ~150–200 MB index
Permissions
Full-disk access · Accessibility (hotkey)
Network
Not required
Download
Signed .dmg, aarch64 or x86_64

Still reading?

Stop scrolling. Start typing.

Buy Snappy · $29