Modular search for Django
Python Other
Latest commit 42f53cd Aug 22, 2016 @antonyr antonyr committed with acdha fix: contains filter, add endswith filter
* `__contains` now works in a more intuitive manner (the previous behaviour remains the default for `=` shortcut queries and can be requested explicitly with `__content`)
* `__endswith` is now supported as the logical counterpart to `__startswith`

Thanks to @antonyr for the patch and @sebslomski for code review and testing.



Author: Daniel Lindsley
Date: 2013/07/28

Haystack provides modular search for Django. It features a unified, familiar API that allows you to plug in different search backends (such as Solr, Elasticsearch, Whoosh, Xapian, etc.) without having to modify your code.

Haystack is BSD licensed, plays nicely with third-party app without needing to modify the source and supports advanced features like faceting, More Like This, highlighting, spatial search and spelling suggestions.

You can find more information at

Getting Help

There is a mailing list ( available for general discussion and an IRC channel (#haystack on


See the changelog

Build Status


Haystack has a relatively easily-met set of requirements.

Additionally, each backend has its own requirements. You should refer to for more details.