# Timefox To develop a Firefox (and Chrome) extension, you need to do the following things [Source](https://extensionworkshop.com/documentation/develop/getting-started-with-web-ext/): - Install Node and the `web-ext` package - Find a baseline example: - Or alternatively use the boilerplate tool: - The entry point is the `manifest.json` file; see [documentation](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json) Interesting for Timefox: - [localstorage and URL connection](https://github.com/mdn/webextensions-examples/tree/master/annotate-page) - [Persistent storage](https://github.com/mdn/webextensions-examples/tree/master/quicknote) - [Pop-up](https://github.com/mdn/webextensions-examples/tree/master/beastify) - [Keyboard shortcuts](https://github.com/mdn/webextensions-examples/tree/master/commands) - [oAuth](https://github.com/mdn/webextensions-examples/tree/master/stored-credentials) - [Session State](https://github.com/mdn/webextensions-examples/tree/master/session-state) - [Runtime Notifications](https://github.com/mdn/webextensions-examples/tree/master/runtime-examples) - [Page to Extension Messageing](https://github.com/mdn/webextensions-examples/tree/master/page-to-extension-messaging) - [Overview page](https://github.com/mdn/webextensions-examples/tree/master/navigation-stats) - [Tests](https://github.com/mdn/webextensions-examples/tree/master/mocha-client-tests) - [HTTP response](https://github.com/mdn/webextensions-examples/tree/master/http-response) - [Messaging between extension and app](https://github.com/mdn/webextensions-examples/tree/master/native-messaging) ## Ideas - put the timer in the right click menu - put the timestack as "stack" in a sidebar ()