Welcome to Haystack!

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.

Getting Started

If you’re new to Haystack, you may want to start with these documents to get you up and running:

Advanced Uses

Once you’ve got Haystack working, here are some of the more complex features you may want to include in your application.


If you’re an experienced user and are looking for a reference, you may be looking for API documentation and advanced usage as detailed in:


Finally, if you’re looking to help out with the development of Haystack, the following links should help guide you on running tests and creating additional backends:


Haystack has a relatively easily-met set of requirements.

  • Python 3.8+

  • Django 3-5

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