Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keithjgrant/omnibear
A Micropub browser extension
https://github.com/keithjgrant/omnibear
blogging decentralization indieweb micropub social
Last synced: 12 days ago
JSON representation
A Micropub browser extension
- Host: GitHub
- URL: https://github.com/keithjgrant/omnibear
- Owner: keithjgrant
- License: mit
- Created: 2017-02-17T20:39:11.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-20T17:58:32.000Z (6 months ago)
- Last Synced: 2024-10-03T12:39:17.527Z (about 1 month ago)
- Topics: blogging, decentralization, indieweb, micropub, social
- Language: JavaScript
- Homepage:
- Size: 8.64 MB
- Stars: 36
- Watchers: 6
- Forks: 8
- Open Issues: 28
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Seeking new ownership
I have turned off domain renewal for https://omnibear.com. If anybody is interested in taking over this project, reach out to me at barkeep @ keithjgrant.com
The browser extension needs to be upgraded (possibly partially rewritten) using the newer web extensions API. In the [retooling branch](https://github.com/keithjgrant/omnibear/tree/retooling) I've updated the tooling and refactored out the MobX dependency to get things modernized a bit, but the main conversion to [Web Manifest 3](https://github.com/keithjgrant/omnibear/issues/107) still needs to be done before this can work in today's browsers.
# Omnibear
For general usage information, see https://omnibear.com.
## Development
After cloning the repository, run `npm install` to install dependencies.
- `npm run build`: build into the `/dist` directory.
- `npm start`: build and automatically watch for changes and rebuild.
- `npm test`: run tests. `npm test -- --watch` will watch for changes and re-run tests every time. If you have issues, make sure you are using node 8.x (the LTS version).## Installing from the repository
To install in Chrome from the repository:
1. Navigate to [chrome://extensions/](chrome://extensions/)
2. Check the “Developer mode” box
3. Click “Load unpacked extension” and select the `/dist` directory of the repositoryTo install in Firefox from the repository:
1. Navigate to [about:debugging](about:debugging)
2. Click “Load Temporary Add-On”
3. Navigate to the `/dist` directory and select the `manifest.json` fileTheoretically, this should work in MS Edge, too, but I don’t run Windows so I haven’t tested that out.
## Overview
Omnibear is run by three scripts:
- `src/background.js` — Runs in a [background page](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts). This keeps track of which tab currently has the user's focus and handles communication between the page script and omnibear popup script.
- `src/page.js` — A [content script](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Content_scripts) that runs in all pages (tabs). This highlights selected entries when the user right-clicks them. It alerts the background script whenever its tab receives user focus. And it watches for when the browser navigates to the authentication successful page on omnibear.com.
- `src/index.js` — The main script of the [popup page](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Sidebars_popups_options_pages). This is a small webapp built using [Preact](https://preactjs.com/) and [MobX](https://mobx.js.org/) that includes the posting form and settings screen.Authentication details, user settings, and the note draft are stored in Omnibear’s localStorage.