Git Product home page Git Product logo

neosearch's Introduction

Build Status Build Status GoDoc codecov.io

NeoSearch - Neoway Full Text Search Index

Join the chat at https://gitter.im/NeowayLabs/neosearch

NeoSearch is a feature-limited full-text-search library with focus on indices relationships. Its main goal is to provide very fast JOIN operations between information stored on different indices.

It's not a complete FTS (Full Text Search) engine in the common sense, instead, it aims to solve very specific problems of FTS. At the moment, NeoSearch is a laboratory for research, not recommended for production usage. Here we will test various technologies for fast storage and search algorithms. In the future, maybe, we can be proud of a very nice tech for solving search problems in big data companies.

NeoSearch is like a Lucene library but without all of the complexities of a complete FTS engine, written in Go, and focused on high performance search with data relationships.

It's not complete yet, still in active development, so stay tuned for updates.

Why another text search engine ? are you guys crazy ?

We are definetly a bunch of crazy people :-). But we believe to have good reasons on building a new text search engine.

Take a look at ours motives here

Install

Install dependencies:

  • leveldb >= 1.15
  • snappy (optional, only required for compressed data)
  • Go > 1.3

and get the code:

export CGO_CFLAGS='-I <path/to/leveldb/include>'
export CGO_LDFLAGS='-L /home/secplus/projects/3rdparty/leveldb/'
go get -u -v github.com/NeowayLabs/neosearch

cd $GOPATH/src/github/NeowayLabs/neosearch
go test -tags leveldb -v .

Contributing

Looking for some fun ? Starting to develop on NeoSearch is as easy as installing docker :D

First of all install Docker.

After you get docker installed, just get the code:

git clone [email protected]:NeowayLabs/neosearch.git

And build it:

make build

If you get no errors, you are good to go :D. Just start messing around with the code on your preferred editor/IDE.

Compiling the code:

make

Running the tests:

make check

Yeah, simple like that :D

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.