This contains the source for the Kagi Search extension for Firefox and Chrome.
Get it for your browser here:
- Sets Kagi as your default search engine
- Automatic login when searching in incognito/private browsing
- Use the Universal Summarizer on the current page
- ... more in the future!
To build the extension, you will need node and npm installed.
- Obtain the files from this repo, either via
git clone https://github.com/kagisearch/browser_extensions
or by downloading the source zip. - run
npm i
to installadm-zip
which is used to package up the files. - You can now run
npm run build-firefox
ornpm run build-chrome
to zip up the relevant files and output a zip file.
You can also download a pre-packaged zip from our releases page.
First, obtain the source code from the release page:
Or by cloning the repo:
git clone https://github.com/kagisearch/browser_extensions
- Head to
about:debugging
- Click on "This Firefox"
- Click "Load Temporary Add-On"
- Select the zip file or manifest.json of the extension.
- Head to
chrome://extensions
- Turn on "Developer mode" in the top right and then some new buttons will pop up.
- Click on
Load unpacked extension
- Select the zip file or you may have to unzip the zip and select the folder outputted from extraction.
Bugfixes and improvements to the extension's code are welcome!
At the time we are not accepting PRs for new features without prior approval.
You can inquire about new features or report bugs here:
- Fork it (https://github.com/kagisearch/browser_extensions/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Check the recommended and required node
and npm
versions in the package.json
and .nvmrc
files.
npm ci # install dependencies
npm run watch-firefox # builds the firefox zip file and unzips it into the `built/` directory every time a file changes
npm run watch-chrome # builds the chrome zip file and unzips it into the `built/` directory every time a file changes
npm run format # formats the code
npm run test # runs the linter & formatter checks
npm run build # builds the chrome and firefox zip files in the `built/` directory
npm run build-firefox # builds the firefox zip file in the `built/` directory
npm run build-chrome # builds the chrome zip file in the `built/` directory