Skip to content

kuanyui/EngineSwitcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Privacy Search Engine Switcher

A WebExtension to switch current page between various search engines in just one click (or Ctrl+Alt+N), if you are too lazy to type !b, !g (especially on mobile) in DuckDuckGo.

So you can easily keep your privacy as possible as you can.

Currently supported search engines:

  • DuckDuckGo
  • StartPage
  • Bing
  • Google

For more information please see GitHub.

Install

Screenshot

https://addons.cdn.mozilla.net/user-media/previews/full/214/214819.png

Supported Browser

  • Firefox for Desktop >= 61
  • Firefox for Android >= 61

Requirements for Development

  • Node
  • web-ext
  • GNU Make
  • Python 3 (For HTTP server)

Development

Prepare

npm i

Run for development (Watch)

make dev
web-ext run --verbose --firefox-profile ~/.mozilla/firefox/PROFILE_DIR_NAME

Deploy (Build .xpi file & run a HTTP server for download)

make xpi-server

Permission

For paranoid users such as me, these are all used permissions with its usages:

  • tabs:
    • Get the URL of current page (Tab.url in pageAction.onClicked)
    • Redirect to new URL (tabs.update({url: string}))
  • storage:
    • For saving user preferences in your Mozilla account (storage.sync)
  • duckduckgo.com, startpage.com, bing.com, … etc
    • For inserting content.js in these pages.

    Firefox for Android requires developer call browser.pageAction.show() explicitly and it’s impossible to use pageAction with only manifest.page_action.show_matches to implement this extension.

  • "content_security_policy": "default-src 'self' 'unsafe-eval'" : unsafe-eval is required by vue.min.js

3rd-Party Libraries

Acknowedgement

  • Main icon is from Breeze of KDE Project

TODOs

  • Customizable keyboard shortcuts.
  • More search engines.
  • Fix the bug when StartPage has no query in URL.

License

WTFPL 2.0