https://github.com/sonirico/go-fist
The Golang client library for Fist (Full Index Search Text) search engine
https://github.com/sonirico/go-fist
client fist full-text-search go golang library search-engine
Last synced: 5 months ago
JSON representation
The Golang client library for Fist (Full Index Search Text) search engine
- Host: GitHub
- URL: https://github.com/sonirico/go-fist
- Owner: sonirico
- License: mit
- Created: 2019-06-26T20:00:48.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-07-20T11:17:04.000Z (about 6 years ago)
- Last Synced: 2025-05-07T10:34:31.637Z (5 months ago)
- Topics: client, fist, full-text-search, go, golang, library, search-engine
- Language: Go
- Homepage:
- Size: 24.4 KB
- Stars: 7
- Watchers: 0
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://travis-ci.org/sonirico/go-fist)
[](https://coveralls.io/github/sonirico/go-fist?branch=master)
[](https://goreportcard.com/report/github.com/sonirico/go-fist)
[](https://godoc.org/github.com/sonirico/go-fist)
[](https://github.com/sonirico/go-fist/issues)
[]()Golang client to interact with [Fist](https://github.com/f-prime/fist), a minimalist full-text index search server with
a focus on keeping things simple## Install
```
go get -u github.com/sonirico/go-fist
```## Examples
```go
import fistClient "github.com/sonirico/go-fist"// ...
client, err := fistClient.NewFistClient("localhost", "5575")
if err != nil {
fmt.Println("Connection Error! Is Fist up and running?")
return
}
// Obtain server version
version, _ := client.Version()
fmt.Println("Server version is " + version)
// Index some data
client.Index("articles", "a an the")
client.Index("TODO", "wash the car")
client.Index("TODO", "walk the dog")
client.Index("podcasts", "DSE - Daily software engineering")
// Search for "the" keyword
documents := client.Search("the")
fmt.Println(documents) // ["articles", "TODO"]
// Not needing articles?
client.Delete("the")
documents = client.Search("the")
fmt.Println(documents) // []
```More detailed examples can be found under the `./examples` subpackage
## Release strategy
Every time a new version for the server shall be released, so will the
client so as to keep a direct and easy to follow client/server version
mirroring## License
Released under the terms of the MIT license. Refer to [LICENSE](LICENSE)
for more details.