Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ahmadassaf/booklight
Your Chrome Alfred - An Extension to provide spotlight-like interface for your bookmarks
https://github.com/ahmadassaf/booklight
bookmark bookmark-manager bookmark-search chrome chrome-extension extension google-chrome productivity
Last synced: about 1 month ago
JSON representation
Your Chrome Alfred - An Extension to provide spotlight-like interface for your bookmarks
- Host: GitHub
- URL: https://github.com/ahmadassaf/booklight
- Owner: ahmadassaf
- Created: 2015-02-28T16:02:17.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-06-20T14:11:11.000Z (over 6 years ago)
- Last Synced: 2024-09-30T17:02:31.889Z (about 1 month ago)
- Topics: bookmark, bookmark-manager, bookmark-search, chrome, chrome-extension, extension, google-chrome, productivity
- Language: JavaScript
- Homepage: https://chrome.google.com/webstore/detail/booklight/lkdhojpobehkcldjmileiancjjpdeakk
- Size: 298 KB
- Stars: 104
- Watchers: 10
- Forks: 6
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Booklight
==========I got fed up wasting my time trying to navigate my way through bunch of bookmarks folder to arrange them. So if you are:
- Obsessed with organization
- Have a couple hundreds (or thousands) of folders in your bookmarks
- You like to keep things tidy and every page has to be in its "perfect" placethen you came to the right place. **Booklight** is a clean Chrome Extension to ease the way of adding a bookmark.
- To launch press (ctrl/Control + b)
- To enable bookmarks search mode hit `space` after booklight is launched[Download from Chrome Store](https://chrome.google.com/webstore/detail/booklight/lkdhojpobehkcldjmileiancjjpdeakk) |
[Watch YouTube Video](https://www.youtube.com/watch?v=fxqaToLRLNo)### Features
- Filter bookmarks based on manual entry
- Show the path of the current selected folder
- Navigate easily through the folders tree using keyboard
- if the folder is highlighted in blue this means that it contains sub-folders as well. The right arrow (->) keyboard key will go inside that folder. You can go back one step to the back using the left keyboard arrow (<-)
- Bookmark directly when you find your target
- The ability to switch to urls search **NEW**
- Launching urls in current or new tab **NEW**
- Fuzzy search enabled for filtering on both folders and urls **NEW**
- Clean current URL before bookmarking (sometimes the url is polluted with query strings e.g `?source= ...` for various tracking information). To clean the url from those, hit `ctrl+alt+x` and this will solve this issue.![booklight](https://s22.postimg.cc/h7ex2dhdt/booklight_main.gif)
## Bookmark Search & launch
Booklight now has the ability to search on your bookmakrs **and it is blazing fast**. I have around 20,000 bookmarks ! and through smart lazy loading and fuzzy search, you can now easily search and launch bookmarks anywhere while browsing.
To switch to the url search mode just hit `space` and then you will see that you can now search urls by having the `|` symbol in the input box.
To launch a url in the current window, simply hit `enter` and to open it in a new tab hit `ctr\control + enter`![booklight-urls](https://s22.postimg.cc/8do0kw4ld/booklight.gif)
### Booklight Performance
I currently have over 1000 folders and 20,000 bookmarked urls. Booklight is blazing fast, to achieve this i implement various hacks to minimize DOM manipulations and most importantly lazy-loading of urls. The lazy loading happens in the following function:```javascript
lazyloader: function lazyloader(elements){var lazyloader = this;
this.elements = elements;
this.showLimit = 15;
this.urlsDOM = '';this.load = function(empty, hide) {
var urlsDOM = '';
var currentAttachedUrls = this.urlsDOM == '' ? 0 : $('.booklight_list li[data-type="url"]').length;
var limit = this.elements.length > this.showLimit ? this.showLimit : this.elements.length;
var urlsToAdd = this.elements.slice(currentAttachedUrls, currentAttachedUrls + limit);// the idea is build a kind of lazy loading for urls to minimize the building of the DOM elements
urlsToAdd.forEach(function(url){
urlsDOM += '
'' +
url.title + '
});
lazyloader.urlsDOM += urlsDOM;
booklight.UI.showSection(urlsDOM, empty, hide);
booklight.UI.updateCounter();
}
}
```
You can tweak the number of elements you want to show on every iteration and it works for both searching and filtering.
### Things i would like to do
- Add mouse interactions
- Add better logic to the star icon (at the moment it only shows when the page is successfully bookmarked) but it will not update if remove the bookmark ... etc.
- ~~Add fuzzy search for filtering from input box~~
- Smart folder suggestions
- ~~Remember last location when going back to main screen or removing filters~~ **done**
[Download from Chrome Store](https://chrome.google.com/webstore/detail/booklight/lkdhojpobehkcldjmileiancjjpdeakk)
### Thoughts
- [Google Chrome’s awful new bookmark manager (and how to switch it off)](http://blog.garethjmsaunders.co.uk/2015/04/19/google-chromes-awful-new-bookmark-manager-and-how-to-switch-it-off/)
- [Chrome users roast Google on spit of hate over revamped bookmarks manager](http://www.computerworld.com/article/2913426/web-browsers/chrome-users-roast-google-on-spit-of-hate-over-revamped-bookmarks-manager.html)