While I was at Facebook, I heavily used the internally developed tool bunnylol
. I found several other versions of bunnylol
that required me to host a server. This version of bunnylol
does not need to be hosted on a server.
Currently, this is hosted on https://rithik.me/bunnylol. However, you can host it on any website that you would like (even on GitHub Pages). Since this is going to be your primary search engine for every new tab you open, I would suggest that you don't host it somewhere that may take a while to spin up the static page (like Heroku where your VM could go to sleep).
A note: a lot of these commands are customized for me. It is probably most beneficial for you to fork this repo and add/remove commands so that it is optimized for commands you actually need.
Open Chrome and click the three dots. Click Settings
and scroll down to Search Engines
.
Click Manage Search Engines
.
Add a new search engine with the URL being http://rithik.me/bunnylol?search=%s
. Of course, you should change the rithik.me
part to your own domain.
Make this the default search engine.
Run npm install
so that flow
(JavaScript type checker) can run.
Open up the src/commands.js
file. Add your command to the COMMANDS
object. You must include a name
and url
attribute and you can add an additional searchurl
attribute if you would to be able to type a command like yt NBA Highlights
(in which case, bunnylol
will automatically search for NBA Highlights on YouTube).
Run npm run prepublish
.
Publish to your website.
Since we use import
module syntax, we need to run a server to bypass CORS issues. You can setup the server by running npm install
, followed by node server.js
. The server should be up and visible at localhost:3000
.