Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bod/bbt
BoD's Bookmark Tool, a browser extension
https://github.com/bod/bbt
Last synced: 23 days ago
JSON representation
BoD's Bookmark Tool, a browser extension
- Host: GitHub
- URL: https://github.com/bod/bbt
- Owner: BoD
- License: gpl-3.0
- Created: 2020-03-07T22:27:57.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-09-28T20:01:08.000Z (about 2 months ago)
- Last Synced: 2024-10-12T13:09:08.587Z (about 1 month ago)
- Language: Kotlin
- Homepage:
- Size: 1.36 MB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: COPYING
Awesome Lists containing this project
README
# BoD's Bookmark Tool
This small browser extension allows you to synchronize bookmark folders with a remote document.
Ideal to share a bunch of bookmarks with your team at work, or your loved ones!
## Setup
- Chrome: [Chrome Web Store](https://chrome.google.com/webstore/detail/plhhpanklegnkjipjebhdbcfdjdhkpfb).
- Firefox: [Firefox Add-ons](https://addons.mozilla.org/en-US/firefox/addon/bod-s-bookmark-tool/) (*).## Supported remote document formats
The remote document can either be RSS, Atom, OPML, HTML, or a 'bookmarks' JSON format.
### RSS / Atom
The `item` elements will be extracted from the feed, and the `title` and `link` elements / `href` attributes will be used to create the
bookmarks.### OPML
The `outline` elements will be extracted from the OPML document, and the `text` or `title` attributes will be used for the bookmark's name.
The `url`, `htmlUrl`, or `xmlUrl` attributes will be used for the bookmark's URL.Subfolders are supported by nesting `outline` elements.
### HTML
All `A` elements of the document will be extracted, unless an XPath expression is provided in the URL.
To do so, append `#__xpath=` to the URL, for instance `https://example.com/bookmarks.html#__xpath=//div[@id='bookmarks']`.
The XPath can either refer to a list of `A` elements, or a single container under which all `A` elements will be extracted.### "bookmarks" JSON
The "bookmarks" JSON format looks like this:
```json
{
"version": 1,
"bookmarks": [
{
"title": "Bookmark 1",
"url": "https://JRAF.org"
},
{
"title": "Folder 1",
"bookmarks": [
{
"title": "Bookmark 1 in folder 1",
"url": "https://google.com"
},
{
"title": "Bookmark 2 in folder 1",
"url": "https://microsoft.com"
}
]
}
]
}
```## How to build from source
- This is [Kotlin/JS project](https://kotlinlang.org/docs/reference/js-overview.html)
- You will need a version of the [JDK](https://en.wikipedia.org/wiki/Java_Development_Kit) on your system
- After cloning this repository, issue this command: `./gradlew dist`
- This will compile and package the plugin, and the resulting `bbt-.zip` file will be in the `build/dist` folder## * About the Firefox version
As of now, the version for Firefox is no longer updated, as since Manifest v3, it is too hard to make
a single extension that works on both Chrome and Firefox. The Firefox version is still available on the Firefox Add-ons site, but it is
stuck at version 1.4.0.## License
Copyright 2020-present Benoit "BoD" Lubek
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later version.This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.