Cross-platform desktop app (Electron) for split-pane search + AI chat. Click a result to add it as a source; you stay on the results page.
AI chat answers are a small window: a few links, a confident summary, and no next page. Search still has one. Nextpage keeps Google, Bing, or Yandex open beside DeepSeek, ChatGPT, or Perplexity so you can page through live results and feed the chat the URLs, titles, and snippets the model never opened.
The model does not pick the sources. You do.


Toolbar:
| Control | What it does |
|---|---|
| Search Engine | Google (default), Bing, or Yandex |
| AI Chat | Deep Seek (default), Perplexity, or ChatGPT |
| Search Query >> AI Chat | Pastes the current query into the chat input |
| SERP Links >> AI Chat | Appends every result on the current results page |
| Flip Panes | Swaps the two panes |
| LLM Language | Language of the injected source/query text (English by default) |
Redirect URLs from the search engine are resolved to the real page URL before they are inserted.
Google login will not function within the app, as Google has blocked OAuth requests from embedded browsers (such as Electron, Android WebView, iOS WKWebView, and CEF) since 2021.
To work around this, you can either:
persist:ai-chat).npm install
npm test
npm start
npm start and npm run dev both launch Electron in development mode.
Each command generates the app icon, compiles TypeScript, and writes artifacts under dist/. Run the Mac and Linux scripts on those OSes (or in CI); dist:mac cannot produce a DMG from Windows.
npm run dist # same as dist:win — NSIS installer
npm run dist:win
npm run dist:mac # DMG + zip (arm64 and x64)
npm run dist:linux # AppImage + deb
npm run dist:all # all three platforms (fails for targets the host cannot build)
The left pane is the real search site; the right pane is the real chat site. Result parsing and chat-input injection depend on those pages’ DOM and will break when they change. Logins, CAPTCHAs, and rate limits are the same as in a normal browser.
The original step-by-step product spec lives in USECASES.txt.
21 commits
TypeScript
88.2%
JavaScript
4.4%
CSS
3.8%
HTML
3.6%
Cross-platform desktop app (Electron) for split-pane search + AI chat. Click a result to add it as a source; you stay on the results page.
AI chat answers are a small window: a few links, a confident summary, and no next page. Search still has one. Nextpage keeps Google, Bing, or Yandex open beside DeepSeek, ChatGPT, or Perplexity so you can page through live results and feed the chat the URLs, titles, and snippets the model never opened.
The model does not pick the sources. You do.


Toolbar:
| Control | What it does |
|---|---|
| Search Engine | Google (default), Bing, or Yandex |
| AI Chat | Deep Seek (default), Perplexity, or ChatGPT |
| Search Query >> AI Chat | Pastes the current query into the chat input |
| SERP Links >> AI Chat | Appends every result on the current results page |
| Flip Panes | Swaps the two panes |
| LLM Language | Language of the injected source/query text (English by default) |
Redirect URLs from the search engine are resolved to the real page URL before they are inserted.
Google login will not function within the app, as Google has blocked OAuth requests from embedded browsers (such as Electron, Android WebView, iOS WKWebView, and CEF) since 2021.
To work around this, you can either:
persist:ai-chat).npm install
npm test
npm start
npm start and npm run dev both launch Electron in development mode.
Each command generates the app icon, compiles TypeScript, and writes artifacts under dist/. Run the Mac and Linux scripts on those OSes (or in CI); dist:mac cannot produce a DMG from Windows.
npm run dist # same as dist:win — NSIS installer
npm run dist:win
npm run dist:mac # DMG + zip (arm64 and x64)
npm run dist:linux # AppImage + deb
npm run dist:all # all three platforms (fails for targets the host cannot build)
The left pane is the real search site; the right pane is the real chat site. Result parsing and chat-input injection depend on those pages’ DOM and will break when they change. Logins, CAPTCHAs, and rate limits are the same as in a normal browser.
The original step-by-step product spec lives in USECASES.txt.
21 commits
TypeScript
88.2%
JavaScript
4.4%
CSS
3.8%
HTML
3.6%