All Projects → coleifer → Scout

coleifer / Scout

Licence: mit
RESTful search server written in Python, powered by SQLite.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Scout

Typesense
Fast, typo tolerant, fuzzy search engine for building delightful search experiences ⚡ 🔍 ✨ An Open Source alternative to Algolia and an Easier-to-Use alternative to ElasticSearch.
Stars: ✭ 8,644 (+3958.22%)
Mutual labels:  search, search-engine, full-text-search
Whoogle Search
A self-hosted, ad-free, privacy-respecting metasearch engine
Stars: ✭ 4,645 (+2080.75%)
Mutual labels:  search, search-engine, flask
Flexsearch
Next-Generation full text search library for Browser and Node.js
Stars: ✭ 8,108 (+3706.57%)
Mutual labels:  search, search-engine, full-text-search
Fess
Fess is very powerful and easily deployable Enterprise Search Server.
Stars: ✭ 561 (+163.38%)
Mutual labels:  search, search-engine, full-text-search
Tntsearch
A fully featured full text search engine written in PHP
Stars: ✭ 2,693 (+1164.32%)
Mutual labels:  search, search-engine, full-text-search
Manticoresearch
Database for search
Stars: ✭ 610 (+186.38%)
Mutual labels:  search, search-engine, full-text-search
Flask Ponywhoosh
A Flask full-text search engine
Stars: ✭ 76 (-64.32%)
Mutual labels:  search-engine, full-text-search, flask
Downloadsearch
search for any kinds of files to download
Stars: ✭ 124 (-41.78%)
Mutual labels:  search, search-engine
Instantsearch Android
A library of widgets and helpers to build instant-search applications on Android.
Stars: ✭ 129 (-39.44%)
Mutual labels:  search, search-engine
Sonic
🦔 Fast, lightweight & schema-less search backend. An alternative to Elasticsearch that runs on a few MBs of RAM.
Stars: ✭ 12,347 (+5696.71%)
Mutual labels:  search, search-engine
Ambar
🔍 Ambar: Document Search Engine
Stars: ✭ 1,829 (+758.69%)
Mutual labels:  search, search-engine
Hypertag
Knowledge Management for Humans using Machine Learning & Tags
Stars: ✭ 116 (-45.54%)
Mutual labels:  search, search-engine
Search
An Open Source Search Engine
Stars: ✭ 139 (-34.74%)
Mutual labels:  search, search-engine
Awesome Deep Learning Papers For Search Recommendation Advertising
Awesome Deep Learning papers for industrial Search, Recommendation and Advertising. They focus on Embedding, Matching, Ranking (CTR prediction, CVR prediction), Post Ranking, Transfer, Reinforcement Learning, Self-supervised Learning and so on.
Stars: ✭ 136 (-36.15%)
Mutual labels:  search, search-engine
Haystack
🔍 Haystack is an open source NLP framework that leverages Transformer models. It enables developers to implement production-ready neural search, question answering, semantic document search and summarization for a wide range of applications.
Stars: ✭ 3,409 (+1500.47%)
Mutual labels:  search, search-engine
Rated Ranking Evaluator
Search Quality Evaluation Tool for Apache Solr & Elasticsearch search-based infrastructures
Stars: ✭ 134 (-37.09%)
Mutual labels:  search, search-engine
Srchx
A standalone lightweight full-text search engine built on top of blevesearch and Go with multiple storage (scorch, boltdb, leveldb, badger)
Stars: ✭ 118 (-44.6%)
Mutual labels:  search-engine, full-text-search
Riddle
Ruby Client API for Sphinx
Stars: ✭ 139 (-34.74%)
Mutual labels:  search, full-text-search
Flask Msearch
Full text search for flask.
Stars: ✭ 164 (-23%)
Mutual labels:  search, flask
Rusticsearch
Lightweight Elasticsearch compatible search server.
Stars: ✭ 171 (-19.72%)
Mutual labels:  search, search-engine

scout is a RESTful search server written in Python. The search is powered by SQLite's full-text search extension, and the web application utilizes the Flask framework.

Scout aims to be a lightweight, RESTful search server in the spirit of ElasticSearch, powered by the SQLite full-text search extension. In addition to search, Scout can be used as a document database, supporting complex filtering operations. Arbitrary files can be attached to documents and downloaded through the REST API.

Scout is simple to use, simple to deploy and just works.

Features:

  • Multiple search indexes present in a single database.
  • RESTful design for easy indexing and searching.
  • Simple key-based authentication (optional).
  • Lightweight, low resource utilization, minimal setup required.
  • Store search content and arbitrary metadata.
  • Multiple result ranking algorithms, porter stemmer.
  • Besides full-text search, perform complex filtering based on metadata values.
  • Comprehensive unit-tests.
  • Supports SQLite FTS4.
  • Documentation hosted on ReadTheDocs.

Installation

Scout can be installed from PyPI using pip or from source using git. Should you install from PyPI you will run the latest version, whereas installing from git ensures you have the latest changes.

Alternatively, you can run scout using docker and the provided Dockerfile.

Installation using pip:

$ pip install scout

You can also install the latest master branch using pip:

$ pip install -e git+https://github.com/coleifer/scout.git#egg=scout

If you wish to install from source, first clone the code and run setup.py install:

$ git clone https://github.com/coleifer/scout.git
$ cd scout/
$ python setup.py install

Using either of the above methods will also ensure the project's Python dependencies are installed: flask and peewee.

Check out the documentation for more information about the project.

Running scout

If you installed using pip, you should be able to simply run:

$ scout /path/to/search-index.db

If you've just got a copy of the source code, you can run:

$ python scout/ /path/to/search-index.db

Docker

To run scout using docker, you can use the provided Dockerfile or simply pull the coleifer/scout image from dockerhub:


$ docker run -it --rm -p 9004:9004 coleifer/scout
# scout is now running on 0.0.0.0:9004

Build your own image locally and run it:


$ cd scout/docker
$ docker build -t scout .
$ docker run -d \
    --name my-scout-server \
    -p 9004:9004 \
    -v scout-data:/data \
    scout
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].