Skip to content

Latest commit

 

History

88 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Everywhere - Fast & local semantic search

Demo GIF

Everywhere builds an index of your filesystem and lets you search it in real time.

Disclaimer

This project is in the very early stages of development. It is not yet suitable for serious use. Expect bugs, performance issues, and breaking changes.

Getting Started

Make sure uv is installed on your system.

Try out the app without installing or persistent storage:

uvx --python 3.11 --from git+https://github.com/nopepper/everywhere.git everywhere --temp

To install and run regularly:

uv tool install --python 3.11 git+https://github.com/nopepper/everywhere.git
everywhere

Hint: Run uv tool upgrade everywhere every now and then to get the latest version.

Additional commands:

  • everywhere --temp will store all app data in a temporary directory and not persist across runs.
  • everywhere --reset will delete all stored app data and reset the app to default settings.

Usage Notes

  • You can pick out the directories you want to index (click the circle in the top left corner, then select "Pick indexed directories...").
  • Everywhere continuously monitors the filesystem for changes and updates the index accordingly.
  • All configs and data are stored in /home/{user}/.local/share/EverywhereApp (Linux) and %LOCALAPPDATA%\EverywhereApp (Windows).
  • Due to Voyager limitations, ARM CPUs are not supported on Windows.

Why this exists

AI has gotten pretty good at understanding text. That's great. Agents and RAG pipelines are bulky, slow and complex. That's not so great. Everywhere is a simple terminal app that uses fast, on-device methods to index and let you search your entire filesystem in real time.

The project takes inspiration from Everything, the ultra-efficient filename search engine for Windows. While not quite as blazingly fast, Everywhere strives to be lightweight, effective and self-explanatory to use.

Search type support matrix

✅ - Supported ⏳ - Planned ❌ - Not planned

File type Full-text Semantic Text OCR Semantic Image
txt ✅ ✅ - -
md ✅ ✅ - -
pdf ✅ ✅ ✅ ⏳
docx ✅ ✅ ❌ ❌
pptx ✅ ✅ ❌ ❌
epub ✅ ✅ ❌ ❌
jpg - - ⏳ ⏳
png - - ⏳ ⏳

Development

You can clone the repository and run the app from source:

git clone https://github.com/nopepper/everywhere.git
cd everywhere
uv run everywhere

Roadmap

  • Add more search providers
    • Full-text indexing (Tantivy)
    • PDF search (text only)
    • PDF search (OCR)
    • Word document search (text only)
  • Improve performance
    • Maximize throughput on CPU
    • Vector database support
    • Vector database saving/loading
    • Replace RapidOCR with Docling
    • File watching with watchdog
  • Improve UX
    • Indexing in background thread
    • Indexing progress bar
    • Limit search results to 1000 items
    • Aggregate search results from multiple search providers
    • Directory selector & watcher
    • Search provider settings
    • Fix libgl1 missing error due to RapidOCR
  • Improve quality
    • Improve parsing and chunking using Docling
    • Normalize embeddings
    • Chunking upgrades
    • Optional reranking
  • Improve reliability
    • Add tests
    • Add logging & events
  • Documentation & OSS
    • License
    • Readme
      • Installation
      • Usage
      • Roadmap
      • License
    • Update docs
  • Future
    • GPU support
    • Faster filesystem parsing
    • Remote search providers (GDrive, Notion)
    • Image search providers
    • Standalone installer
    • Soft operators
      • OR operator !or (additive)
      • AND operator !and (multiplicative)
      • Closures with (( and ))

Contributing

Feel free to open an issue if you find a bug or have an idea for a new feature.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Easy, real-time semantic search engine for your local files and documents

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages