60 lines
2.5 KiB
Markdown
60 lines
2.5 KiB
Markdown
# Shelf — Read Later
|
|||
|
|
|
||
|
|
A new-tab page that shows everything you've saved to read later, as a
|
||
|
|
sortable grid or list. No account, no server — everything lives in your
|
||
|
|
browser's local extension storage.
|
||
|
|
|
||
|
|
## How to save something
|
||
|
|
|
||
|
|
- **Click the toolbar icon** — saves the page you're currently on.
|
||
|
|
- **Right-click a page** → "Save page for later"
|
||
|
|
- **Right-click a link** → "Save link for later" (doesn't need to be open)
|
||
|
|
|
||
|
|
A ✓ briefly appears on the icon to confirm the save.
|
||
|
|
|
||
|
|
## The shelf (new tab page)
|
||
|
|
|
||
|
|
- Toggle between **grid** (cards with thumbnails) and **list** (compact,
|
||
|
|
bookshelf-spine style) — top right.
|
||
|
|
- **Sort** by newest, oldest, title, or site.
|
||
|
|
- **Search** filters by title, domain, or URL as you type.
|
||
|
|
- **Archive** tucks an item away without deleting it; "Show archived"
|
||
|
|
reveals archived items again.
|
||
|
|
- **Delete** removes an item, with a 5-second **Undo**.
|
||
|
|
|
||
|
|
Thumbnails are captured automatically when you save the *current* page
|
||
|
|
(a screenshot of what's on screen). Links saved via right-click show a
|
||
|
|
favicon instead, since the browser hasn't loaded that page yet.
|
||
|
|
|
||
|
|
## Install — Chrome / Edge (unpacked)
|
||
|
|
|
||
|
|
1. Go to `chrome://extensions` (or `edge://extensions`).
|
||
|
|
2. Turn on **Developer mode** (top right).
|
||
|
|
3. Click **Load unpacked** and select this folder.
|
||
|
|
4. Open a new tab — you should see the Shelf page.
|
||
|
|
|
||
|
|
## Install — Firefox (temporary, for testing)
|
||
|
|
|
||
|
|
1. Go to `about:debugging#/runtime/this-firefox`.
|
||
|
|
2. Click **Load Temporary Add-on…**
|
||
|
|
3. Select the `manifest.json` file inside this folder.
|
||
|
|
4. Open a new tab. Firefox will ask permission to let the extension
|
||
|
|
override the new tab page the first time — allow it.
|
||
|
|
|
||
|
|
> Temporary add-ons in Firefox are removed when you close the browser.
|
||
|
|
> For a permanent install, the extension needs to be signed by Mozilla
|
||
|
|
> (via [addons.mozilla.org](https://addons.mozilla.org)) or loaded in a
|
||
|
|
> [Developer Edition / Nightly build](https://www.mozilla.org/firefox/developer/)
|
||
|
|
> with `xpinstall.signatures.required` set to `false`.
|
||
|
|
|
||
|
|
## Notes / things you might want to change
|
||
|
|
|
||
|
|
- Storage uses `chrome.storage.local`, so saved links stay on the device
|
||
|
|
you saved them on. Swapping the `chrome.storage.local` calls for
|
||
|
|
`chrome.storage.sync` in `background.js` and `newtab.js` would sync
|
||
|
|
small link lists across your signed-in browsers, but `sync` storage
|
||
|
|
has a much smaller quota (~100KB) and doesn't handle thumbnails well —
|
||
|
|
not recommended once you have images in the mix.
|
||
|
|
- Icons in `icons/` are placeholders — swap them for your own artwork
|
||
|
|
any time; sizes 16/32/48/128 are already wired up in `manifest.json`.
|