algoliasearch-django
Algolia Search integration for Django
What it is and what it does
algoliasearch-django bridges Django models and Algolia's cloud search service, automatically keeping your indexed data in sync as models change. It handles model registration, field mapping, geo-location indexing, and tag-based filtering through a decorator-based configuration system. The package provides management commands for reindexing, applying index settings, and clearing indices, plus a backend search method for server-side queries.
The integration is designed to work with Django 4.x and 5.x on Python 3.8+. You define which model fields to index, customize the index name and object ID, preprocess fields before indexing, and configure Algolia's search parameters. The package handles the mechanics of pushing data to Algolia and retrieving results, leaving the search UI typically to Algolia's InstantSearch.js library.
Use it for:
- Index Django model instances automatically and keep them synchronized with Algolia's cloud index as records are created, updated, or deleted.
- Build a geo-location search feature by mapping model location fields to latitude/longitude coordinates indexed in Algolia.
- Implement faceted search and custom ranking by configuring searchable attributes, custom ranking rules, and tag filters on indexed models.
- Reindex large model datasets or apply index setting changes across your application using the provided management commands.
- Search from your Django backend using raw_search() to retrieve Algolia results directly, or delegate search to the frontend via InstantSearch.js.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Integrates Algolia's hosted search service into Django projects, automatically indexing model data and providing search, geo-search, and tagging capabilities.
Yes, if you are committed to using Algolia as your search backend and need Django integration. The package is stable, has no known vulnerabilities, and low install friction. However, the dormant maintenance status (585 days since last release) means you should verify that it meets your current Django and Algolia API version requirements before adopting it for new projects.
Install
algoliasearch-django on PyPI
pip
pip install algoliasearch-djangouv
uv add algoliasearch-djangopoetry
poetry add algoliasearch-djangoInstalling algoliasearch-django
Before you install
Low install friction with a single runtime dependency on django. Maintenance is dormant—last release was 585 days ago on 2025-01-06—but the repository remains active with no archived status, suggesting stability rather than abandonment.
License in practice
MIT License permits commercial and private use with minimal restrictions, making it suitable for most Django projects without licensing concerns.
Quickstart
pip install algoliasearch-django
# In Django settings:
ALGOLIA = {
'APPLICATION_ID': 'MyAppID',
'API_KEY': 'MyApiKey'
}
# In index.py:
import algoliasearch_django as algoliasearch
from .models import YourModel
algoliasearch.register(YourModel)
Requires Algolia account credentials (APPLICATION_ID and API_KEY) configured in Django settings before indexing will function.
Verify before relying
- Whether AUTO_INDEXING's synchronization overhead is acceptable for large model datasets or high-write-frequency applications.
- Performance characteristics when indexing models with many related objects or complex field preprocessing.
- Current compatibility with the latest Algolia API features beyond what the 4.0.0 release supports.
Package facts
| License | MIT License (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — django |
| Maintenance | dormant — 585 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 904,593/month — #4,763 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: algoliasearch_django-4.0.0-py2.py3-none-any.whl
Keywords: algolia, pyalgolia, search, backend, hosted, cloud, full-text search, faceted search, django
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
algoliasearchA Python HTTP client for interacting with…
permissive · top 5,000 on PyPI
django-admin-autocomplete-filterAdds autocomplete-based filtering to Django…
copyleft · top 15,000 on PyPI
zope.indexzope.index provides indexing structures for…
unclear · top 15,000 on PyPI
django-elasticsearch-dslIndexes Django model instances into…
permissive · top 15,000 on PyPI
modelsearchIndexes Django models into Elasticsearch,…
permissive · top 15,000 on PyPI
strawberry-graphql-djangoGenerates GraphQL types, queries, mutations,…
permissive · top 5,000 on PyPI
djangorestframework-gisAdds geographic and GeoJSON support to Django…
permissive · top 15,000 on PyPI
django-admin-inline-paginatorAdds pagination controls to Django admin inline…
permissive · top 5,000 on PyPI
django-ordered-modelAdds ordering and reordering capabilities to…
permissive · top 15,000 on PyPI
sqlalchemy-searchableAdds fulltext search capabilities to SQLAlchemy…
permissive · top 15,000 on PyPI