4 releases (breaking)

0.22.6 Nov 24, 2023
0.19.2 Sep 8, 2023
0.10.0 Nov 15, 2022
0.9.0 Oct 13, 2022

#22 in #grpc-api

27 downloads per month

Custom license

150KB
3K SLoC

Maintenance

PyPI Version Crates.io NPM

Summa

Summa is a full-text IPFS-friendly search engine that may be launched on both large servers and inside your browser.

Summa can be launched entirely inside your browser, enabling you to search in network published indices without ever having to execute search queries on remote servers.

If you're ready to start, be sure to check out our docs:

Key Features

  • Full-text search engine written in Rust with a wide range of supported queries and ranking functions
  • Server with GRPC API for using the search engine
  • Python asynchronous client library and CLI for the API
  • JS-bindings to launch subset of Summa in browsers
  • Also, you may use Kafka for indexing

Online-documentation

Distribution

Server

⚠️ The project is under active development, we do not publish latest images yet. The best option now is testing

Clients

Donate

You may support us at OpenCollective or by cryptos:

  • monero: 464Wws65yssHdqGKGkFsHmbqNhBJ7zoPrbPTGAJma4VmTngtrJmQEaG9i739CUJJak3esALHpbWGXdVwMghzpFToLD6Q7Ne
  • btc: 3HooXUqJnZ4Ad8AGeqfSZ5QZQE72ZaZgY6
  • eth: 0x009AeabF4aeDe417d324077E7858956e6d0962D6

lib.rs:

Fast full-text search server

Features

  • Fine CLI and asynchronous client library aiosumma written in Python
  • Simple GRPC API for managing multiple indices and for search
  • Extendable query parsing on Python client side
  • Ranking documents with custom and/or user-defined scoring functions
  • Indexing documents through Kafka or directly
  • Tracing with OpenTelemetry and exposing metrics in Prometheus format
  • Reflection API for deep insights about text data
  • Configurable tokenizers (including CJK)
  • IPFS Integration

Getting started

Dependencies

~83–125MB
~2M SLoC