It uses Fuse.js to power its search, and explorer.js (the front-end JS file for nimble-explorer) enhances this somewhat by implementing a search narrowing mechanism (specified by space separated words) and searching for tags. The search mechanism was quite easy to work with, although required some tweaking before it worked sensibly.
At this point it's quite usable, and will even work in many browsers in Google's cached version of the page (which is useful in case Linode, my host, decides to perform some surprise maintenance).
This is also the first time I've set up a web deployment mechanism using Git and it's working very smoothly which is nice