Skip to content

flosommerfeld/Favourites

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Favourites Mozilla Add-on

Favourites is a Mozilla Firefox WebExtension which can be used as an alternative to the common Firefox bookmarks. Favourites adds an icon to your browsers toolbar from which you can access all of your saved pages. The user can manage his favourite pages inside the WebExtensions settings page.

picture alt

Click here to view more demo screenshots

Settings page

picture alt

Context menu feature

picture alt

Getting Started

To install the WebExtension please click the big "Add to Firefox" button below which takes you to addons.mozilla.org. Alternatively you can also install it manually by downloading the installables from the projects releases page. If you want to install the extension manually, you have to drag&drop the installable (.xpi file) into your browser window and click the 'add' button.

After installing you can click on the icon in the toolbar, then click the cogwheel to open settings and finally setup your favourite websites by typing in the details and clicking the add button. Note that new websites can also be added via Rightclick -> Add website to favourites.

Add to Firefox

Core Technical Concepts

Favourites uses the WebExtension Storage API which enables the WebExtension to locally save all of the users favourite websites. The WebExtension only uses a popup page and an options page, no background scripts or content scripts. The popup page is used to show the user his favourite websites and the options page is used to manage these websites.

The project has two folders in the root directory: icons (where all the icons are saved) and ui (where all files are located which allow user interaction and from where the extension accesses the Storage API to store websites). Another important file which is located in the root directory is the manifest.json. Like in any other WebExtension it stores metadata about the extension such as its name, version and permissions. The file also gives Favourites the permission to use the Storage API in order to use a popup in the toolbar and a options page for extension preferences. Since version 1.2.0 Favourites has a background script which was added in order to add new websites via the context menu. The script is always running in the background and waits for the user to open the context menu and to click the "Add website [..]" button. If the button is clicked the background script gets information about the active tab (via the activeTab permission) and accesses the Storage API to save the new website.

Visualized project structure:

picture alt

For additional information on Mozilla Firefox WebExtensions please visit developer.mozilla.org.

Contributing

Contributor Guidelines: TBA

Code Style/Requirements: TBA

Format for commit messages: TBA

TODO

Next steps:

Features planned:

  • Loading images for favourites from online resources etc.
  • Sorting the websites via the options page.

Known bugs:

Contact

Email address: flosommerfeld@pm.me

License

The contents of this repository are covered under the GNU General Public License v2.0.