A Chrome extension to provide semantic search over your browsing history. It goes beyond simple keyword matching of page titles, analysing the content of visited sites and allowing you to find previously visited pages based on their meaning and relevance to your queries. This provides intuitive rediscovery of previously visited sites or specific content from your history.
Clone this repository to your local machine:
git clone https://github.com/cnuahs/semantic-history-search.git
cd semantic-history-search
Install the necessary dependencies and build the extension:
npm install
npx ng build
- Open Chrome and navigate to chrome://extensions/.
- Enable "Developer mode" by toggling the switch in the top right corner.
- Click on the "Load unpacked" button.
- Select the
dist/
directory inside your cloned repository.
The extension should now be installed and ready to use in Chrome.
Visit the Pinecone website and sign up for a free account.
Once you have created an account and logged in, follow these steps to create an index:
- Navigate to the "Database" / "Indexes" tab.
- Click on the "Create Index" button.
- Name your index (e.g.,
shs-ext
). - Configure the index settings (number of dimensions and similarity metric) to suite your embedding model and click "Create". If using the default embedding model (c.f. Xenova/all-MiniLM-L6-v2), set the number of dimensions to 384 and the similarity metric to "Cosine similarity".
To get your Pinecone API key:
- Navigate to the "API keys" tab.
- Click on the "Create API key" button.
- Copy the generated API key and store it securely.
You will need this API key to configure the extension to use Pinecone for semantic search.
- Click the extension's icon in the Chrome toolbar to display the UI.
- Click the gear icon in the top right to display the "Settings" page.
- Enter your Pinecone index name (from Step 2) and API key (from Step 3).
- Click "Apply".
Run npx ng build [--configuration development]
to build the extension. Build artifacts will be stored in dist/
.
The development
configuration builds the extension without minification. Highly recommended when debugging using the Chrome developer tools.
This project was generated with Angular CLI version 18.2.11.
For help on the Angular CLI use npx ng help
or see the Angular CLI Overview and Command Reference page.