omnivore-list-popup
omnivore-list-popup copied to clipboard
Web extension for Firefox and Chrome that shows a popup with a list of your Omnivore articles to quickly open or archive (similar to the In My Pocket extension).
Omnivore List Popup Web Extension (Firefox & Chrome)
Show a popup with a list of your Omnivore articles to quickly open or archive.
Installation & Usage
- Install the extension from the Firefox Extensions page or the Chrome Web Store.
- Get an Omnivore API Key through your Omnivore Account.
- Go into the extension’s settings and paste your Omnivore API key.
- Launch the extension by clicking the new "Omnivore List Popup" button in your extension toolbar/dropdown.
- Optional: Add the extension to your always-visible toolbar.
Development Setup
- Install the Node version defined in
.nvmrc
(e.g. withnvm use
). - Install dependencies with
npm install
.
Development Commands
- Run
npm run dev
to watch files for changes and start Firefox for debugging.- Run
TARGET=chrome npm run dev
to use Chrome - Run
TARGET=vivaldi npm run dev
to use Vivaldi
- Run
- Run
npm run format
to format the code with Prettier. - Run
npm run lint
to lint the code with ESLint. - Run
npm run build
(orTARGET=chrome npm run build
) to generate the output files indist
.
Releasing
- Run
npm run create-releases
to generate the extension archives in the root directory. - Upload the Firefox release on https://addons.mozilla.org/developers/addon/omnivore-list-popup/
- Upload the Chrome release on https://chrome.google.com/webstore/devconsole
- Remove the locally-created files after uploading via
npm run clean
.
Contributing
If you have ideas or issues, please get in touch! You can either use GitHub issues or contact herrherrmann directly.
Todos & Ideas
- [x] Add pagination to browse beyond 10 items (issue #9)
- [x] Add keyboard shortcuts for opening the popup and adding the current page to Omnivore
- [x] Improve generation of fallback images (sometimes broken or very low-contrast characters)
- [x] Cache API results for quicker load times
- [x] Indicate saving of new items when triggered via keyboard shortcut (e.g. via toolbar icon)
- [ ] Edit article info (title, description, dates, etc.)
- [ ] Optionally load other sets like archived items (via saved searches dropdown?)
- [ ] Add possibility to delete items (additionally to archiving)
- [ ] Improve onboarding, e.g. make it possible to enter API key in popup
- [ ] Improve error handling
- [ ] Use Omnivore’s
savePage
API instead ofsaveUrl
(to capture page content directly) - [ ] Internationalization
- [ ] Cache list items locally for offline usage
- [ ] Highlight the popup button if the current page is added to Omnivore
Acknowledgements
- Thanks to the amazing In My Pocket extension for inspiring this project. 👏
- Thanks to the Omnivore team for the nice Pocket alternative and open API.
- Thanks to the Lucide project for the icon set.