Git Product home page Git Product logo

examine's Introduction

Nuget Examine Build Build Status

Examine


❤️ If you use and like Examine please consider becoming a GitHub Sponsor ❤️

What is Examine?

Examine allows you to index and search data easily and wraps the Lucene.Net indexing/searching engine. Lucene is super fast and allows for very fast searching even on very large amounts of data. Examine is very extensible and allows you to configure as many indexes as you like and each may be configured individually. Out of the box Examine gives you a Lucene based index implementation as well as a Fluent API that can be used to search for your data.

Installation

via Nuget

PM> Install-Package Examine

Quick start

Tip: IExamineManager is the gateway to working with examine. It's a singleton service that is registered in DI.

  1. Configure Services and create an index

    // Adds Examine Core services
    services.AddExamine();
    
    // Create a Lucene based index
    services.AddExamineLuceneIndex("MyIndex");
  2. Populate the index

    if (examineManager.TryGetIndex("MyIndex", out var myIndex))
    {
        // Add a "ValueSet" (document) to the index 
        // which can contain any data you want.
        myIndex.IndexItem(new ValueSet(
            Guid.NewGuid().ToString(),  //Give the doc an ID of your choice
            "MyCategory",               //Each doc has a "Category"
            new Dictionary<string, object>()
            {
                {"Name", "Frank" },
                {"Address", "Beverly Hills, 90210" }
            }));
    }
  3. Search the index

    var searcher = myIndex.Searcher; // Get a searcher
    var results = searcher.CreateQuery()  // Create a query
        .Field("Address", "Hills")        // Look for any "Hills" addresses
        .Execute();                       // Execute the search

Information and downloads for Examine releases

Documentation

Tip: There are many unit tests in the source code that can be used as Examples of how to do things. There is also a test web project that has plenty of examples of how to configure indexes and search them.

Copyright & Licence

© 2021 by Shannon Deminick

This is free software and is licensed under the Microsoft Public License (Ms-PL)

Flat vector created by freepik - www.freepik.com

examine's People

Contributors

alastairtree avatar benjaminc avatar callumbwhyte avatar chrish619 avatar dependabot[bot] avatar fcingolani avatar fspezi avatar ja0b avatar jbreuer avatar jclementson avatar jmayntzhusen avatar jsheardry avatar lars-erik avatar leekelleher avatar matthewcare avatar nzdev avatar perplexdaniel avatar samgooch avatar shazwazza avatar sniffdk avatar

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.