Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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

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" place

then 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)