skillfed

typesense

Python client for Typesense, an open source and typo tolerant search engine.

typesense v2.0.0 1.2M downloads/30d#4,228 on PyPI246
Permissive license Apache 2.0 Active released

What it is and what it does

Typesense is a Python client for Typesense, an open-source search engine designed for typo-tolerant full-text search. The package wraps the Typesense HTTP API, allowing developers to create and manage search collections, index documents, and execute search queries from Python applications. It supports both synchronous and asynchronous workflows through separate Client and AsyncClient classes, making it suitable for different application architectures.

The library depends on httpx for HTTP communication and typing-extensions for type hints, keeping its dependency footprint minimal. It targets modern Python versions (3.9 through 3.13) and maintains version alignment with the Typesense server—version 2.0.0 requires server >= v30.0. The package is actively maintained and includes both sync and async code paths, with sync implementations generated automatically from async sources.

Use it for:

  • Building a search interface for a web application that needs typo tolerance and fast full-text search
  • Indexing and querying documents in a Python backend service using Typesense as the search backend
  • Implementing async search operations in a FastAPI or async Python application
  • Managing multiple search collections and their schemas programmatically
  • Integrating Typesense search into a data pipeline that processes and indexes documents

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Python client library for Typesense search engine, providing both synchronous and asynchronous APIs to query, index, and manage search collections.

Yes. The package is actively maintained, has low install friction, carries a permissive license, and provides both sync and async APIs for a mature search engine. Install it if you are already running a Typesense server and need a Python client to interact with it; it is not useful without a Typesense instance to connect to.

Install

typesense on PyPI

pip

pip install typesense

uv

uv add typesense

poetry

poetry add typesense

Installing typesense

Before you install

Low friction installation with only two lightweight runtime dependencies (httpx and typing-extensions). Actively maintained with a recent release and ongoing repository activity.

License in practice

Apache 2.0 permissive license allows use in commercial and open-source projects with minimal restrictions; attribution required but no copyleft obligations.

Quickstart

pip install typesense

import typesense

client = typesense.Client({
    "api_key": "your-api-key",
    "nodes": [{"host": "localhost", "port": "8108", "protocol": "http"}],
})

collections = client.collections.retrieve()

Requires a running Typesense server instance; client version 2.0.0 requires Typesense server >= v30.0

Verify before relying

  • Whether the package handles connection pooling or retry logic automatically
  • Performance characteristics when handling large result sets or bulk indexing operations

Package facts

License Apache 2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 2 — httpx, typing-extensions
Maintenance actively maintained — 179 days since the last release
Last repo commit
First released
Downloads 1,202,985/month — #4,228 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: typesense-2.0.0-py3-none-any.whl

Keywords: search, typesense

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9

Tags

typesense python clientsearch engine api wrapperasync search clientfull-text search librarytypo-tolerant searchcollection managementsearch indexing
search-engineasync-support

More Front-Ends packages