Hunt is a flexible, lightweight search platform written in Haskell.
The default server implementation provides a powerful JSON-API and a simple web interface.
- Powerful query language
- Schema support (numeric data, dates, geospatial data)
- Granular ranking capabilities
- JSON API
- Extensible architecture
The easiest way to get the setup started is to install the current Haskell Platform.
If you're using linux, you are able to use our Makefile for the build.
git clone https://github.com/hunt-framework/hunt.git
cd hunt
make sandbox install
If you're using Windows, you can use cabal for the build. If you like to use sandboxes on Windows, you can copy the neccessary cabal commands from our Makefile.
git clone https://github.com/hunt-framework/hunt.git
cd hunt/hunt-server
cabal install
The following line starts the default server. The web interface is available at http://localhost:3000/.
make startServer
A small sample data set can be inserted with:
make insertJokes
This would not be a good idea. First of all we are using 64Bit Hashes for our internal DocId
s. Despite this source of error the 32Bit machine limits the available memory to 4GB.
GHC performs a a major garbage collection every 0.3 seconds in idle, which can be computationally
expensive on a big index. This can be disabled with the GHC RTS option -I0
.
Hunt was started in 2013 by Ulf Sauer and Chris Reumann to improve and extend the existing Holumbus framework. Holumbus was developed in 2008-2009 by Timo B. Kranz and Sebastian M. Gauck and powers the current Haskell API search Hayoo!. We decided to rebrand, because Hunt represents a major rewrite and breaks compatibility.
A new Hayoo implementation is currently under development by Sebastian Philipp.
Both projects were developed at the FH Wedel under supervision and active support of Prof. Dr. Uwe Schmidt.