( 中文 | English )
eSearch is a rewrite of Information-portal with many additional features.
The main purpose is to implement a screen search function similar to Smartisan Big Bang or Xiaomi Portal on Linux (also available on Windows and macOS), and it is also a convenient screenshot software.
After several iterations, eSearch's functionality has become more and more enriched.
Including screenshot+OCR+search+translation+pasting+reverse image search+screen recording.
The font used is FiraCode, and the font can be set in the settings.
Download from the website eSearch
or open the releases tab on the right, select the package that suits your system, and download and install it.
For users in China, you can use GitHub Proxy to accelerate the download.
For ArchLinux, you can search and install e-search
or e-search-git
from the AUR.
Using winget: winget install esearch
Open eSearch from your launcher, and it will appear in the system tray.
The default shortcut key is Alt+C (you can also set the shortcut key in the settings).
For more introduction, see Documentation
Select and crop, color picker, freehand brush, geometry, mosaic, blur
In addition to adjusting with arrow keys, selection also supports inputting arithmetic expressions for adjustment
Supports executing operations immediately after custom selection, such as automatically performing OCR after selection
Also supports scrolling screenshots, can stitch together horizontally, vertically, or in any direction
You can set backgrounds (gradient, image), rounded corners, shadows for screenshots.
Change image resolution for export.
Erase objects and repair images.
Record screen, custom size, camera
Can indicate cursor position and keyboard keystrokes
Can set a virtual background
Scroll zooming, opacity, auto repositioning, mouse transparency
Supports magnifying images without changing window size to prevent obscuring other content
Can set filters and transformations (such as mirroring) through CSS
Out-of-the-box offline OCR (eSearch-OCR), just select the text and press Enter
Offline OCR supports paragraph recognition and can use punctuation-based segmentation algorithms
Also supports online OCR from Baidu and Youdao
Can edit text later, select text on images, and sync selection to the editing area for easy proofing
Supports multiple languages (extra download required in settings)
Image search engines from Google, Baidu, and Yandex
Can customize multi-modal large model interfaces to interact with AI using images
Can call translation after OCR, supports word selection translation
Supports free translation engines like Google Translate, and can also set APIs for other translation engines such as DeepL and Baidu, can use AI translations like ChatGPT, and even customize local AI translations
Can translate with multiple engines simultaneously, choosing the best
Can save translation results to local files or online to memory software like Anki
Generates an overlay window and replaces image text with translated text
Can set timed translation, suitable for videos, games, etc.
QR code recognition
1.mp4
Screenshot, freely adjust the selection box size (video about 2.6MB)
3.mp4
Color picker (video about 1MB)
2.mp4
Ding on the screen, opacity adjustment, reset, and mouse operation (video about 1.8MB)
Drawing interface
4.mp4
Main page search and editing in other applications (video about 1.6MB)
Main page find and replace (supports regular expression)
Most buttons use icons, reducing unnecessary translation.
- Simplified Chinese
- Traditional Chinese
- Esperanto(Esperanto)
- Spanish(Español)
- Arabic(عربي)
- English
- French(Français)
- Russian(Русский)
git clone https://github.com/xushengfeng/eSearch.git
cd eSearch
npm install
# Compile
npm run dist
# The install package and unpacked directory will be created in the build directory
# Run
npm run start
# Debug
npm run dev
Specific technical instructions
Tested successfully on ArchLinux, KDE plasma, Xorg.
Tested successfully on Windows 10 and Windows 11.
Tested successfully on macOS Catalina.
Electron officially no longer supports Win7 and Win8, so eSearch no longer supports it either.
But you can compile it yourself, see Documentation, some features may not be available.
Most Windows will prompt you to download the dependent library after installation. This is because the screenshot library is needed. Clicking Download will automatically open Microsoft's official website for download. It may need to be restarted after installation is complete.
Gnome users need to install the appindicator plugin to use the system tray.
Mac has put some restrictions on dmg downloads from the Internet.
You can search for keywords such as "mac" and "file corruption" on the Internet. Different versions of the system apply different methods.
- The need for cross-platform support. I wanted to experience the excellent screenshot tools on Windows on Linux, and it's not good for Linux to be left out, so I chose cross-platform support.
- Qt relies on c++, and the learning cost is too high. Flutter for desktop is not yet mature. I am more proficient in js development.
- Screenshot relies on the local system, which is something current browsers cannot do.
- Ultimately, there is only one cross-platform solution similar to JavaScript. I chose the more mature and widely used electron.
In the case that other platforms do not have a separate package as a library like Arch Linux, the software occupies a lot of storage space, but the increase in dozens of js scripts is not much, but the functions brought are significantly felt, so I will try my best to give full play to its potential to achieve a more beautiful UI and richer features.
In addition to the use of Electron, there are also onnx runtime libraries (used to run AI models), offline Optical Character Recognition models, screen recording portrait recognition models, object removal models for advanced editing, FFmpeg (used for screen recording format conversion, Linux has libraries so it is not included), etc.
This is generally due to the incompatibility of configurations in different versions. You can try to restore the default settings in Settings-Advanced-Advanced settings.
If the problem is not solved, please submit an issue.
Please refer to the contributing guidelines
When I was using Windows, I always used the handy screenshot software: Snipaste - Screenshot + Pasting. But when I switched to Linux, Snipaste was not supported (in 2019, it is now supported), so I chose Flameshot, but unfortunately it does not have an intuitive color picker.
Another reason I developed eSearch is that I enjoy using the "Immediate Information Search" tool on my phone such as Smartisan Big Bang or Xiaomi Portal, but I couldn't find a similar alternative on my computer.
So I simply developed my own "screenshot+OCR+search+pasting" software. I initially developed it with python+pyqt and created Information-portal, but because I am not familiar with pyqt, I switched to and developed this software. 😄
Spiritual support: Light up the star🌟 in the upper right corner
Material support: Personal homepage Appreciation
Actions: Feedback bugs, provide new function ideas,Participate in development
GPL-3.0 © xushengfeng