Motivation
I just wanted to learn how to write a search engine from scratch without any prior experience.
Features
REST API
Index a new document:
curl -X POST http://localhost:8080/v1/insert -d "{\"content\": \"lorem ipsum\"}"
Search through all documents:
curl -X GET http://localhost:8080/v1/search?q=lorem
Golang API
First install the package via Go Mod:
go get github.com/micheleriva/gosearch
Then you can use its native Golang APIs to index and search for documents:
package main
import (
"fmt"
"github.com/micheleriva/gosearch"
)
func main() {
gosearch.IndexDocument("Love is old, love is new, love is all, love is you")
gosearch.IndexDocument("What is love? Baby don't hurt me, no more.")
results := gosearch.Search("love")
fmt.Println(results)
}
License
gosearch is licensed under the MIT license, but seriosuly, don't use it. Or do it at your own risk.