Sprintor.CodeIndex.Search 0.2.0-alpha.204

This is a prerelease version of Sprintor.CodeIndex.Search.
dotnet add package Sprintor.CodeIndex.Search --version 0.2.0-alpha.204                
NuGet\Install-Package Sprintor.CodeIndex.Search -Version 0.2.0-alpha.204                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sprintor.CodeIndex.Search" Version="0.2.0-alpha.204" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Sprintor.CodeIndex.Search --version 0.2.0-alpha.204                
#r "nuget: Sprintor.CodeIndex.Search, 0.2.0-alpha.204"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Sprintor.CodeIndex.Search as a Cake Addin
#addin nuget:?package=Sprintor.CodeIndex.Search&version=0.2.0-alpha.204&prerelease

// Install Sprintor.CodeIndex.Search as a Cake Tool
#tool nuget:?package=Sprintor.CodeIndex.Search&version=0.2.0-alpha.204&prerelease                

Code Index

A fast full-text searching tools based on Lucene.Net

Feature

  1. Support multiple indexes
  2. Auto monitoring indexed files changes
  3. Support various search (etc: fuzzy, wildcard, case-sensitive) on file content, name, location, extension
  4. Support Docker
  5. Support Visual Studio

Demonstrate Site

https://coderindex.azurewebsites.net/

Guide

Run On Your Local

Config

Go to CodeIndex.Server ⇒ appsettings.json

LuceneIndex ⇒ To your local empty folder, this folder will be going to store the index files and configuration files.

ManagerUsers ⇒ Config the users name, id, password that can management the indexes.

"CodeIndex": {
  "LuceneIndex": "D:\\TestFolder\\Index",
  "IsInLinux": "false",
  "MaximumResults": 10000,
  "ManagerUsers": [
    {
      "Id": 1,
      "UserName": "Admin",
      "Password": "CodeIndex"
    }
  ]
}
Run Server

Set CodeIndex.Server as the start up project, compile the project

Run it via visual studio or bash

dotnet CodeIndex.Server.dll --urls "http://:5000;https://:5001"
Config Indexes

In this page, you can add/remove/delete and config the index folder you want to monitoring and searching.

Config Indexes

Search By Files

It will return the matched infos with highlight in the whole file

Search By Files

Search By Lines

It will return the matched infos with highlight and matched line number

Search By Lines

Run With Docker

Support docker container, Docker hub

Docker Command Format
docker pull qiuhaotc/codeindex
docker run -d --name codeindex -p 8080:80 -v "Your index folder":/luceneindex -v "Your code folder":/monitorfolder -v "Your logs folder":/app/Logs -e CodeIndex__MonitorFolderRealPath="Your real folder path" -e CodeIndex__ManagerUsers__0__UserName="Your Management User Name" -e CodeIndex__ManagerUsers__0__Password="Your Management Password" --restart=always qiuhaotc/codeindex
Example
docker pull qiuhaotc/codeindex
docker run -d --name codeindex -p 8080:80 -v /home/user/luceneindex:/luceneindex -v /home/user/codefolder:/monitorfolder -v /home/user/logs:/app/Logs -e CodeIndex__MonitorFolderRealPath="/home/user/codefolder" -e CodeIndex__ManagerUsers__0__UserName="Test" -e CodeIndex__ManagerUsers__0__Password="Dummy" --restart=always qiuhaotc/codeindex

Notice: in the docker container, when add the index config, the monitor folder should replace the actual path to start with "/monitorfolder", like the actually path is "/home/user/codefolder/mysourceA", the monitor folder should be "/monitorfolder/mysourceA"

Search Extension For Visual Studio

Status Value
VS Marketplace VS Marketplace
VS Marketplace Downloads VS Marketplace Downloads
VS Marketplace Installs VS Marketplace Installs
Download Url

Code Index Extension

Search Code
  1. Open the code index search window under: view ⇒ other window ⇒ code index search
  2. Config the service url to your own service
  3. Doing the search

Code Index Search Extension

Search Syntax

Phase Query

When Phase Query been ticked, we can search the content via the query like: str*ng abc, it will give the result such as "string abc", "strdummyng abc" as the search results, the results like "abc string" or "stng abc" won't return.

In Phase Query mode, currently only support wildcard matching for word like stri*, organi*tion

Phase Query Search

When Phase Quuery not been ticked, you can follow the sytax under http://www.lucenetutorial.com/lucene-query-syntax.html to doing the search

Case-Sensitive

When Case-Sensitive been ticked, we can search the content in case-sensitive mode. When search the content like String, it won't return the content that contains string

Misc

Status Value
Stars Stars
Forks Forks
License License
Issues Issues
Docker Pulls Downloads
Release Downloads Downloads
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.2.0-alpha.204 79 1/11/2024
0.1.0 86 1/11/2024
0.1.0-alpha.203 57 1/11/2024
0.1.0-alpha.202 64 1/11/2024