alt.hn

7/14/2026 at 7:29:42 PM

Show HN: Flashbang – DuckDuckGo bangs resolved locally with a Service Worker

https://flashbang-dyr.pages.dev

by t3ntxcles

7/15/2026 at 4:31:13 PM

Wow this is excellent, I wish bangs were part of the web spec and all browsers supported it client side. It could work like unlock origin and its filter lists so the websites aren’t coupled and instead are dynamic.

by sunnybeetroot

7/15/2026 at 5:15:17 PM

Exactly, there’s so much potential beyond search. Bangs could act as general browser-side shortcuts to deep links, so something like !ghsettings could take you directly to GitHub’s settings instead of making you do this manual navigation through the site you are visiting

by t3ntxcles

7/15/2026 at 5:16:12 PM

It would also be cool if such bang lists were supported by websites officially, allowing a fast navigation

by t3ntxcles

7/15/2026 at 11:12:26 AM

This is a wonderfully elegant use of Service Workers. Intercepting the request at the browser level to do instant local routing instead of waiting for a round-trip to the search provider is one of those 'why didn't I think of that' hacks.

Quick question on the implementation: How are you managing the storage and lookup for the 14,000+ bangs? Are they just bundled as a static JSON in the SW payload, and does that have any noticeable impact on the browser's memory footprint when the Service Worker activates?

by canary-digital

7/15/2026 at 5:12:12 PM

[dead]

by t3ntxcles

7/14/2026 at 11:18:34 PM

I always found redirects to be wasteful on mobile connections where latency and packet losses are frequent.

Interestingly Firefox, I get latency that are way worse than Chromium (Median 0.46ms vs 1.2ms, P99 1.3ms vs 1.8ms).

by Sayrus

7/15/2026 at 8:06:51 AM

Yes, I agree, thanks for testing on Firefox. I use Zen on a daily basis, it is Firefox based and my result is also interestingly around (0.56ms median, 0.59ms mean, 0.78ms P95, 0.94ms p99, min 0.48ms, max 1.3ms) for prefix bangs. I think that the differences come in how each browser may have implemented SW. On benchmarking suite specifically the tail can also come from scheduling, IPC, extensions, timer precision, or other browser work

by t3ntxcles