--- id: sonic-client version: "1.0.0" license: BSD 3-Clause License license_treatment: permissive maintenance: abandoned --- # sonic-client — python client for sonic search backend License: permissive · Maintenance: abandoned · Downloads: 123.9K/mo ## What it is and what it does sonic-client is a synchronous Python wrapper around the Sonic search backend protocol. It provides three main client classes—IngestClient for adding searchable content, SearchClient for querying, and ControlClient for administrative operations—all communicating via TCP with a remote Sonic server. The library was designed to work within gevent contexts as an alternative to async-based clients. The package has no external runtime dependencies, making installation straightforward. However, it is in abandoned maintenance: the last commit was in April 2021, over 1170 days ago, and the codebase is marked as Alpha. While it remains available and has modest download volume, it will not receive updates for Python compatibility issues, Sonic protocol changes, or bug fixes. Use it for: - Index and search documents in a Sonic backend from a Python application without async overhead. - Build a synchronous search layer on top of Sonic for gevent-based applications. - Perform bulk ingestion of searchable content into Sonic collections and buckets. - Query Sonic indices and retrieve search results programmatically in a blocking context. - Trigger administrative operations like consolidation on a remote Sonic instance. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python client library for the Sonic search backend, providing ingest, search, and control operations over a network connection. Yes, with conditions. Install if you are already committed to Sonic as your search backend and need a synchronous Python client for a gevent-based application. The low install friction and permissive license are advantages. However, the abandoned maintenance status means you should expect no updates for Python version compatibility or Sonic protocol changes, and you may need to fork or patch the code yourself if issues arise. Not recommended for new projects unless you have a specific gevent requirement and are willing to maintain the integration yourself. ## Install pip install sonic-client uv add sonic-client poetry add sonic-client ## Installing sonic-client Before you install: Low install friction with no runtime dependencies. Maintenance is abandoned—last commit was 2021-04-27 and no updates for over 1170 days—so expect no bug fixes or compatibility updates for newer Python or Sonic versions. License in practice: Licensed under BSD 3-Clause License with permissive treatment, allowing commercial and private use with minimal restrictions. Quickstart: pip install sonic-client from sonic import SearchClient with SearchClient("127.0.0.1", 1491, "password") as querycl: results = querycl.query("wiki", "articles", "search_term") Requires a running Sonic search backend server accessible at the specified host and port. Verify before relying: - Whether the package works with current Python versions (3.10+) given its abandoned status. - Compatibility with recent Sonic backend versions and protocol changes. - Whether gevent integration mentioned in the description is actively maintained or documented. ## Package facts - License: BSD 3-Clause License (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 123.9K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags sonic search backend client, python sonic ingest search, sonic protocol client library, search backend python integration, sonic query and push client, search-backend, gevent-compatible [View on SkillFed](https://skillfed.io/packages/sonic-client) · [View on PyPI](https://pypi.org/project/sonic-client/)