Bang Replay 💥 🔁

Created by Zachary Robinson; View on GitHub.

About this project This is a simple redirection engine (not a search engine!) that keeps track of your searches locally. Inspired by Und*ck by Theo Browne and extended by IndexedDB to save previous queries. This was mostly a learning exercise and proof of concept for using IndexedDB in a larger project, and only uses vanilla JavaScript APIs without any libraries or build steps. If I’m going to recommend someone learn vanilla HTML/CSS/JS before using something like React, then I figured I should know what the regular IndexedDB API looks like before using a wrapper for it (and hey, I might as well use vanilla HTML/CSS/JS too while I’m at it). The page resources are cached on the client so that every search doesn't require a roundtrip to fetch the mostly static files this site uses. While only a limited number of hardcoded bangs are supported here, it would be pretty trivial to instead perform a lookup on all of the ones that DuckDuckGo uses themselves.

To search, use the box below or configure your browser to use https://bang.zsrobinson.com?q=%s as it’s custom search engine. Since everything is kept local, your searches are not sent to any servers besides those of the search engine you’re forwarded to.