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 http://haystacksearch.org/.
There is a mailing list (http://groups.google.com/group/django-haystack/) available for general discussion and an IRC channel (#haystack on irc.freenode.net).
- Development version: http://docs.haystacksearch.org/
- v2.1.X: http://django-haystack.readthedocs.org/en/v2.1.0/
- v2.0.X: http://django-haystack.readthedocs.org/en/v2.0.0/
- v1.2.X: http://django-haystack.readthedocs.org/en/v1.2.7/
- v1.1.X: http://django-haystack.readthedocs.org/en/v1.1/
Haystack has a relatively easily-met set of requirements.
- Python 2.6+ or Python 3.3+
- Django 1.5+
Additionally, each backend has its own requirements. You should refer to http://docs.haystacksearch.org/dev/installing_search_engines.html for more details.