Superkeys allow users to add short keys for websites and make search query in those sites.

Overview
Superkey logo

super key text logo

Superkeys is a browser extension which allow users to add short keys for websites and make search query in those sites.

Made with ❤️ @nilooy 🧑‍💻

Twitter URL

Download for Chrome Download for Firefox

superkey banner

Demo Video

🧐 What is Superkeys?

It's a browser extension to search + browse faster. Sometimes we need to look for solution on a same site over and over again and some specific pages and this extension can simplify this process with custom keys, search query url , subkeys and context menus. We will talk in details about these feature below.

Example: John loves coding and he needs search on stackoverflow many times a day while coding. So the normal process would be open a new tab, go to stackoverflow and search with the keyword he is looking for. With superkeys he pressed Alt + Space on keyboard and type so how to center a div and 💥


🌱 The extension will not collect or use your data, all your data will be saved and synced in your browser.


⚗️ Features

  • 🔐 KEYS

Key are the namespace for a single website eg: key: so Usage: type so and enter

Search History Type: #

Bookmarks Search Type: @

  • 🌐 Search Query Url

Each key can contain one single seaarch query url belong to the key above so, eg: https://stackoverflow.com/search?q Usage: type so how to center a div and enter

  • 🔀 Subkeys

Each key can contain multiple Subkeys, let's add pr subkey with url https://github.com/pulls for key gh Usage: type gh pr and enter

  • 🔖 Context Menu

Each key containing 🌐 Search Query Url will be added to browser context menu, Usage: select any text on the browser and right click, from the context menu hover over to superkeys and you will see the list, select your preferred site to search on.

  • ⬆️ Import Keys

Keys can be imported by .json file with correct data structure. Go to Import from top bar, drop or click to upload to json file

  • ⬇️ Export Keys

Keys are selectable. You can also select all. After selection you can export the selected ones. Usage: select the keys you want to export, it will show Export on top bar, click it

🛂 Data Structure (All data types are :string)

{
   "keyLists":[
      {
         "key":"gh",
         "separator":"",
         "url":"https://github.com",
         "queryUrl":"https://github.com/search?q",
         "querySeparator":"",
         "subKeys":[
            {
               "key":"pr",
               "url":"https://github.com/pulls"
            },
            {
               "key":"pr-need-review",
               "url":"https://github.com/pulls/review-requested"
            }
         ]
      }
   ]
}

🔧 Tools Used

🚸 Development Guide

  1. Install Dependencies
yarn
  1. Start Dev Server Default is firefox
yarn start

For Firefox

yarn dev:firefox

OR for chrome

yarn dev:chrome

Any of these commands will open a instance of that browser with superkeys extension installed.

  1. Build all for prod
yarn prod

This will generate folder with version number inside release directory and will contain both firefox and chrome 's zip files.

Important Notes

  • src/manifest.ts > will generate manifest v2 for firefox and v3 for chrome, add your necessary configs there in manifest.ts file.
  • Used browser from 'webextension-polyfill' instead of global chrome to get cross browser apis.
import browser from 'webextension-polyfill'
  • Pre-commit hooks can be enabled by running node_modules/husky

👥 Contribution

  • 🐛 Bugs: Open issues if you find bugs or discussion
  • 🧑‍💻 Development: Simply Fork and PR

📈 Roadmaps

  1. Omnibox
  2. Automation (Simple user defined content-scripts)
  3. Show TopSites by Default
  4. Open Apps with management api
  5. Fetch results from available api for keys with search query turned on.

Feel free to add more


Appriciate for spending time read it.

Hope to get a on this repo and add me for more exciting projects Twitter URL

Share with other

Twitter URL

You might also like...

A web app build with HTML, CSS, and JavaScript. It allow users to add a book title and and it's author. Content are rendered also dynamically.

Awesome books: with ES6 Description the project. Built With Major languages Frameworks Technologies used Awesome Books In this project the featured se

Nov 4, 2022

A single-page application that allow users to add their To Do items. The items could be checked as completed and the completed task can be removed. Built with JavaScript, HTML and CSS

To Do list Application This is a single page application that allows users to keep track of their tasks. Users can add the task and also check the che

Oct 14, 2022

This is an app that displays a list of books, allow users add a book and remove a selected book.

BookStore This is an app that displays a list of books, allow users add a book and remove a selected book. Built With HTML CSS -React -Redux -JavaScri

Jul 22, 2022

A web component that allows you to run high level programming languages on your websites (static websites included!)

Code-Runner-Web-Component A web component that allows you to run high level programming languages on your website via the public Piston API Show your

Dec 16, 2022

Awesome books app is a basic website that allows users to add/remove books from a list. It is a single page app (SPA) which allow switching to different pages of the app without page load. Built with JavaScript.

Awesome Books ES6 In this project, I build a basic website that allows users to add/remove books from a list. using ES6 syntax and make it more organi

Jul 1, 2022

MultiVersus Searcher is a program that allow you to search cosmetics about MultiVersus.

MultiVersus Searcher is a program that allow you to search cosmetics about MultiVersus.

MultiVersus Searcher MultiVersus Searcher is a program that allow you to search cosmetics about MultiVersus. If you need help please join the discord

Dec 9, 2022

A single-page application that allows users to keep track of their books. Users can add the book details (book title and author) and also, and the books can also be removed. Built with JavaScript, HTML, and CSS

Project Name Awesome book with ES6 Description the project. This is a single page application that allows users to keep track of their books. Users ca

Oct 13, 2022

Send encrypted and decrypted messages with verifiable keys and human readable names.

Send encrypted and decrypted messages with verifiable keys and human readable names.

zooko-msg Encrypt and decrypt messages using AES with a preshared ECDH key generated using keys associated with Handshake names. I noticed that there

Jul 27, 2022
Releases(1.0.3-alpha.0)
  • 1.0.2-alpha.0(Jul 3, 2022)

  • 1.0.1-alpha.0(Jul 2, 2022)

    • :memo: Revert version (eacf8e6)
    • :rocket: Add release files v1.1.0-alpha.0 (7f43741)
    • :memo: Revert version (5c6350d)
    • :memo: Revert version (306c21d)
    • :memo: Revert version (57affb4)
    • :rocket: Add release files v2.0.0-alpha.0 (f650e6c)
    • :seedling: Check with prettier (cfb7acf)
    • :seedling: Check with prettier (34d9afd)
    • 🗑️Clean up with lint check (e2c7185)
    • :test_tube: Add precommit lint (99de1a3)
    • Merge pull request #4 from nilooy/feature/footer-info (4aa08a9)
    • :zap: Add guide url (cd3d1de)
    • :zap: Add browser based hints (1bbc57d)
    • Merge pull request #3 from nilooy/feature/hint-on-boot (7021d24)
    • :zap: Show hint on boot (c4458b3)
    • Merge branch 'main' of github.com:nilooy/superkeys (747ae43)
    • :bug: Fix placeholder top (9d9f9c9)
    • :zap: Add hint modal (17a0948)
    • Merge pull request #1 from nilooy/hotfix/shortcuts-windows-os (554247d)
    • :zap: Add manage key option (19f4dc3)
    • :memo: Update Readme title (1ab6217)
    Source code(tar.gz)
    Source code(zip)
    superkeys.chrome.1.0.1-alpha.0.zip(86.13 KB)
    superkeys.firefox.1.0.1-alpha.0.zip(86.22 KB)
  • 1.0.0-alpha.0(Jul 1, 2022)

    • :bug: Fix zip file (0b0eb54)
    • :rocket: Add release files v1.0.0-alpha.0 (2aeb448)
    • :bug: Fix release hook commands (502b252)
    • :bug: Fix release hook commands (8e92093)
    • :bug: Fix release hook commands (0b2c938)
    • Release 1.0.0-alpha.0 (003e964)
    • :memo: Change to alpha (693a483)
    • :memo: Add hooks to release.it (83c93f4)
    • :memo: Add hooks to release.it (4eafec2)
    • Release 1.0.0-alpha.0 (5215467)
    • :memo: Add hooks to release.it (7f2fe8e)
    • Release 1.0.0-alpha.0 (a53dff7)
    • :memo: Change version (4447c9a)
    • Release 1.0.0-alpha.1 (43a9fad)
    • :rocket: Add new prod command (3a95269)
    • :bug: Remove pre-release version from manifest (2238804)
    • Release 1.0.0-alpha.0 (2c601f1)
    • :rocket: Add release-it (4d81da6)
    • 0.0.5 (7c397f1)
    • :fire: Adjust commands for firefox (3261113)
    • :zap: Help text based on search type (efed807)
    • :fire: :fire: :fire: Add history & bookmarks search :zap: (d158bd1)
    • :fire: Add default keys (980747f)
    • :bug: Add chrome types (45df7bf)
    • :bug: Fix search query (0c66e99)
    • :bug: Fix import duplicate keys (388284a)
    • :wastebasket: Remove logs (c8a82ff)
    • :zap: :fire: Add types (a5b4603)
    • :zap: Remove abs position from suggestion list (f6530d5)
    • :zap: Add assets to git (e1a93e4)
    • :zap: Add import form validation (aa0145f)
    • :zap: Add prepare file (83e731d)
    • :zap: Change to preact ts setup (6399500)
    Source code(tar.gz)
    Source code(zip)
    superkeys.chrome.1.0.0-alpha.0.zip(76.99 KB)
    superkeys.firefox.1.0.0-alpha.0.zip(77.08 KB)
Owner
Niloy
A Coder, a Dreamer and a Believer ... Yes, i can be described by these simple but powerful three words.
Niloy
A simple browser extension, intended to get you "Back To Work" when you start slacking off to one of those really addictive sites.

Back to Work A simple browser extension, intended to get you Back To Work when you start slacking off to one of those really addictive sites. What doe

Dheeraj Lalwani 29 Nov 19, 2022
A web app designed to keep track of activities that are done and those that are and not done. Users can add, delete, mark as completed and update the activities. Built with Javscript, html, css and webpack.e your activites

ToDoListApp A web app designed to help web keep track of activities that are done and those that are still pending. Users can add, delete, mark as com

Francis Wayungi 6 Dec 23, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
"Jira Search Helper" is a project to search more detail view and support highlight than original jira search

Jira Search Helper What is Jira Search Helper? "Jira Search Helper" is a project to search more detail view and support highlight than original jira s

null 41 Dec 23, 2022
A simple query builder, it will helps to develop DSL query for Elasticsearch

Elasticsearch Dynamic Query Builder A simple query builder, it will helps to develop DSL query for elasticsearch Installation You can start it from np

Hashemi Rafsan 4 Nov 20, 2022
Allows users to quickly search highlighted items on Wikipedia. Inspired by the "search Wikipedia" function on the kindle mobile app.

wikipedia-search Allows users to quickly search highlighted items on Wikipedia. Inspired by the "search Wikipedia" function on the kindle mobile app.

Laith Alayassa 18 Aug 15, 2022