Tabnotes is a Chrome and Edge extension for people who keep lots of tabs open. It puts every tab in a searchable side-panel table, lets you add notes and tags, and remembers useful tabs after they close.
Everything stays in your browser. Tabnotes does not read page contents, send data to a server, or require an account.
- Download
tabnotes-vX.Y.Z.zipfrom the latest release and extract it. - Open
chrome://extensionsin Chrome oredge://extensionsin Edge. - Turn on Developer mode, choose Load unpacked, and select the extracted folder.
- Optionally pin Tabnotes, then click its toolbar button to open the side panel.
To update, download and extract the new release over the old folder, then click Reload on the browser's extensions page. Your saved records are kept in the browser, not in that folder.
- Find a tab: Search by title, URL, note, tag, or other custom field. Use the status buttons and column filters to narrow the table.
- Add context: Edit Notes or Tags directly in a row. Open Settings to add fields, choose visible columns, or change the theme.
- Act on tabs: Select one or more rows, choose an action such as focus, close, reload, pin, or copy URLs, then click Apply. A row's More menu includes grouping and window actions; clicking a closed tab's title reopens it.
- Keep something: Mark a record Keep when you want Tabnotes to retain it after the tab closes. Deleting a saved record always asks for confirmation.
- Back up or move data: Use Export JSON for a complete backup and Import JSON to restore or merge it. Export TSV creates a spreadsheet-friendly snapshot.
- Maintain a live list: Choose a file under Live TSV to keep an automatically updated list of active tabs. Your browser may ask you to approve the file again after a restart.
Tabnotes deliberately avoids guessing when tabs are ambiguous after a browser restart. Such records appear as Unmatched so you can reopen or attach them yourself instead of risking the wrong match.
There is no build step. Load this directory as an unpacked extension, run npm ci, then use npm test and npm run check before submitting changes.