Coder Social home page Coder Social logo

desktop-search's Introduction

Desktop search

Simple app to search the contents of local files. At the moment only python files are supported.

Install and run

  • Install Python 3.8 or higher.
  • Create a config file based on examples/config.json.example and save as config.json.

Windows

py -m pip install poetry
py -m poetry install
py -m poetry run python -m spacy download en_core_web_sm

Linux

python3 -m pip install poetry
python3 -m poetry install
python3 -m poetry run python -m spacy download en_core_web_sm

Run

  • Run py -m poetry run python wsgi.py -b (Windows) / poetry run python wsgi.py -b (Linux)
  • Open http://localhost:8080/ in your browser to index and search your files.

Purpose

Only matches full names. For example a search for itertools returns all files where itertools is imported, but not files where it is mentioned in comments. Searching itself is super fast. The indexing step is around 5000 files per minute on my computer. It was written mostly to support refactoring when functions are renamed and other source files have to be adjusted.

Dev

  • ctags could be used instead of manual lexing and tag extraction
  • trigram index could be used for non-full-word/partial matching

Todo

  • search comments (with select natural language)
  • add more tokenizers
  • index files in archives like zip files

Optional dependencies

  • pip install future-fstrings to handle files which specify coding: future_fstrings

desktop-search's People

Contributors

dependabot[bot] avatar dobatymo avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

johndpope

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.